PhotoViewer icon indicating copy to clipboard operation
PhotoViewer copied to clipboard

如果XML中ImageView并不是在第一层第一个所导致的崩溃问题

Open GitJoBo opened this issue 2 years ago • 1 comments
trafficstars

PhotoViewer的findImageView函数 private fun findImageView(group: ViewGroup): ImageView? { for (i in 0 until group.childCount) { return when { group.getChildAt(i) is ImageView -> group.getChildAt(i) as ImageView group.getChildAt(i) is ViewGroup -> findImageView(group.getChildAt(i) as ViewGroup) else -> throw RuntimeException("未找到ImageView") } } return null }

只会判断第一个view,for循环是没用的

GitJoBo avatar Aug 07 '23 06:08 GitJoBo

这是修复后可用的函数 private fun findImageView(group: ViewGroup): ImageView? { for (i in 0 until group.childCount) { val child = group.getChildAt(i) if (child is ImageView) { return child } else if (child is ViewGroup) { val result = findImageView(child) if (result != null) { return result } } } throw RuntimeException("未找到ImageView") }

GitJoBo avatar Aug 07 '23 06:08 GitJoBo