描述
最近写一个ViewPager图片墙时遇到一个莫名其妙的奔溃问题,只有特定机型才会出现
Fatal signal 11 (SIGSEGV) at 0x0000002c (code=1), thread 8439 (glide-source-th)
先看看ViewPager的布局文件
这里设置padding
和clipToPadding
是为了让ViewPager能显示一个以上的条目
而ViewPager的条目是只是是一个ImageView,用Glide加载图片,就不放出布局文件内容了
分析
问题来了,这里ViewPager的padding
是写死的,要是某些机型屏幕宽度过窄,就会导致ViewPager的padding
大于其宽度,其条目的宽度就会被挤得无法显示,这时候Glide就会抛出异常了
解决
所以这里的padding一定要根据ViewPager的实际宽度动态设置
至于Glide的glide-source-th
错误是啥呢?这里是native代码,我就没再深究下去了