版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/codeteenager/article/details/78012103
UI卡顿原理
主要来源于Android系统中渲染做了太多的耗时操作,原因有可能是layout太复杂,layout层叠次数太多,动画次数过多。
UI卡顿原因分析
- 人为在UI线程中做轻微耗时操作,导致UI线程卡顿。
- 布局Layout过于复杂,无法在16ms内完成渲染。
- 同一时间动画执行的次数过多,导致cpu或gpu负载过重。
- View过度绘制,导致某些像素在同一帧时间内被绘制多次,从而使cpu或gpu负载过重。
- View频繁的触发measure、layout,导致measure、layout累计耗时过多及整个View频繁的重新渲染。
- 内存频繁触发GC过多,导致暂时阻塞渲染操作。
- 冗余资源及逻辑等导致加载和执行缓慢。
- ANR
UI卡顿优化
- 布局优化
- 列表及Adapter优化
- 背景和图片等内存分配优化
- 避免ANR