Android简单的布局优化

简单的布局优化

Android系统每隔16ms发出VSYNC信号,触发对UI进行渲染,那么整个过程如果保证在16ms以内就能达到一个流畅的画面。

检测:

1. 设置 -> 开发者选项 -> 调试GPU过度绘制 -> 显示GPU过度绘制 

2. ADB指令

打开调试GPU过度绘制 adb shell setprop debug.hwui.overdraw show      

关闭调式GPU过度绘制 adb shell setprop debug.hwui.overdraw false

效果

无过度绘制(一个像素只被绘制了一次) (原色) 

过度绘制x1(一个像素被绘制了两次) (蓝色) 

过度绘制x2(一个像素被绘制了三次) (绿色) 

过度绘制x3(一个像素被绘制了四次) (粉色) 

过度绘制x4+(一个像素被绘制了五次以上) (红色)

避免过度绘制处理:

一:移除不必要的background

二:clipRect:去掉重复绘制部分。

多重嵌套问题:

1.使用ConstraintLayout,可以实现完全扁平化的布局,减少层级。

2.RelativeLayout本身尽量不要嵌套使用。

3.嵌套的LinearLayout中,尽量不要使用weight,因为weight会重新测量两次。

4.推荐使用merge标签,可以减少一个层级。

5.使用ViewStub延迟加载。

总结:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

时代我西

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值