1) 4.X下 viewgroup 不必定会向下传递requestLayout,当onlayout的速度比较慢(好比子View比较复杂之类的缘由),系统会跳帧!此时子View下层的view可能就不会再被调用requestLayout的onMeasure和onLayout了。布局
解决方法就是优化程序,减小子View的层数,好比很是复杂的布局,使用GridLayout之类的方式来解决,而不仅是用LinearLayout和FrameLayout。若是优化也不能解决问题,考虑到机器性能也受到其它因素影响,能够考虑针对性调用必需要刷新View的requestLayout。界面慢些比界面出错要好接受一些。性能
2)4.1.1下ImageView的图片出现花屏。(此问题在4.2以上版本不会出现)优化
背景说明:我为了控制内存,把全部须要加载大图片的drawable都作了一层代理,底层使用LruCache来管理图片占用的内存,避免一次加载太多图片时出现内存溢出。ui
问题分析:对于主view打开从view后,连续打开不少张大图后,会出现主view已经显示的图片实际上在内存中已经释放,系统使用硬件加速的方式进行绘制时该内存区域已经清空,致使出现花屏现象。 而我从新加载图片的地方是在Drawable的draw方法中,在4.1.1下,若是硬件加速则不会再次调用此方法,因此此时须要在对应的ImageView中调用View.setLayerType(View.LAYER_TYPE_HARDWARE, null);代理
更多资料可见:http://zuiniuwang.blog.51cto.com/3709988/721798/blog