Android性能优化(二):UI布局优化

Android性能优化(二):UI布局优化

性能优化系列文章:
Android性能优化(一):APP启动优化
Android性能优化(二):UI布局优化
Android性能优化(三):响应优化
Android性能优化(四):内存优化

一、前言

人眼在看画面时,画面帧率高于每秒10-12帧(即每秒播放10-12张图片)的时候,就会认为是连贯的。一般电影的拍摄及播放帧数是每秒24帧。按道理说,画面帧率越高,用户体验越好,但这也代表着成本越高。
Android APP的性能标准是60fps,即1秒之内要达到60帧,这样我们就只有1000/60 = 16 毫秒的时间来处理任务。Android系统每隔16ms会发出一个VSYNC信号来触发UI的渲染。如果在16ms内不能完成UI的渲染,界面就出现卡顿的情况,导致用户体验差。

二、检查工具

1、Layout Inspector工具检测xml页面,去除不必要的嵌套
在这里插入图片描述
使用方法我就不详细介绍了。
2、通过Show GPU Overdraw去检测Overdraw,移除不必要的背景
手机打开Show GPU Overdraw方法:设置 -> 开发者选项 -> 调试GPU过度绘制 -> 显示GPU过度绘制
在这里插入图片描述
颜色越深,代表过度绘制也严重,主要关注深红色部分。

三、优化方法(层级嵌套最好不要超过五层)

1、移除不必要的background,避免过度绘制;
2、对于公共使用的布局提取出来,使用 include 进行引入;
3、使用 merge 减少层级嵌套;
4、适当使用 ViewStub 控件;
5、建议使用Android推出的ConstaintLayout布局,可以实现扁平化布局,减少层级。

猜你喜欢

转载自blog.csdn.net/weixin_42574892/article/details/106546958