Android性能优化之流畅度优化实用系列

3.UI层优化之减少过度绘制

2018-03-29  本文已影响28人  真胖大海

参考

一.打开 “调试过渡绘制”

打开"调试过渡绘制"过后,会在界面上显示颜色,不同颜色表示该像素点的绘制次数
<img src="https://developer.android.com/studio/images/profile/gpu/gpu-overdraw-before_2x.png?hl=zh-cn" width = "300" height = "300" alt="图片名称" align=center />

颜色 过渡绘制的次数 像素点绘制的次数 可接受区域
无色 0 1 全局
[站外图片上传中...(image-c52944-1522290499824)]蓝色 1 2 大片
[站外图片上传中...(image-429538-1522290499824)]绿色 2 3 中等
[站外图片上传中...(image-5759e1-1522290499824)]浅红 3 4 少,小
[站外图片上传中...(image-41d810-1522290499824)]红色 4 5

二.减少绘制次数

  1. 去掉系统的默认背景
     this.getWindow().setBackgroundDrawableResource(android.R.color.transparent);
    
  2. 去掉控件多余的背景

例如

一个详情页

  1. 原来的红圈的部分是绿色(过渡绘制2次)

    image.png
  2. 去掉系统的默认背景后,红圈的部分是蓝色(过渡绘制1次)

    image.png
  3. 去掉控件多余的背景色后,红圈的部分是白色(没有过渡绘制)

    image.png
上一篇 下一篇

猜你喜欢

热点阅读