60Hz
Android系统每隔16ms发出VSYNC信号,出发对UI进行渲染
1、将UI对象转换成多边形和纹理
2、CPU传递数据到GPU,GPU进行绘制
GPU的绘制过程是根据CPU传递的指令来的,它很傻,让画什么就画什么,16ms就画一次,造成有些图像被其它图像覆盖,底下以及面上的图像都要绘制,造成没有必要的浪费。
过度绘制的集中情况
1、布局层级太深,用户看不到的区域也会被绘制
2、自定义控件中,onDraw方法做了过多的绘制
性能优化看上去非常高大上,但其实就是“细节决定成败”的概念。需要对原理性的东西了解清楚,每一步都有什么不一样,针对每个步骤进行细致的优化。性能优化是一种思想,而不是一套具体的操作方法。
1、布局中的背景是否有必要
2、是否可以删除多余布局
3、自定义View是否进行了裁剪
4、布局是否够扁平化
网友评论