Android渲染机制

1、Android系统每隔16ms发出VSYNC信号,触发对UI进行渲染
2、渲染的过程是由CPU与GPU协作完成
如下图:

为什么是16ms?

1、人眼与大脑之间的协作无法感知超过60fps的画面更新
2、1000/60hz,相当于16ms

什么是GPU?

解释什么是GPU,首先要弄清楚一个概念—栅格化。
栅格化就是将Button,Shape,Path,String,Bitmap等UI组件拆分到不同的像素上进行显示。如下图:


UI的渲染过程由CPU和GPU共同完成,其中CPU负责把UI组件计算成Polygons,Texture纹理,然后交给GPU进行栅格化渲染。 GPU的引入就是为了加快栅格化的操作。
CPU和GPU协同工作的示意图如下:

UI卡顿的原因

没有办法在16ms内完成UI更新操作

如何解决UI卡顿

1、优化UI层次结构,去除不必要的嵌套,尽量使布局扁平化
2、减少过度绘制

更多相关文章

  1. Android(安卓)ID详解
  2. Android应用程序UI硬件加速渲染环境初始化过程分析
  3. 收藏 Android系统 init 启动过程分析
  4. Android(安卓)重要的组件
  5. Android基本功:事件处理
  6. Intent的简介以及属性的详解
  7. Android(安卓)React-Native系列之-Native UI Components
  8. EditText组件drawableLeft属性设置的图片和hint设置的文字之间的
  9. Android四大组件之广播接收器(一)

随机推荐

  1. EditText属性简介
  2. Android与webview JS 键值编码差异
  3. Android Studio快捷键、配置 Android Stu
  4. Android NKD环境搭建 若干问题.
  5. Android share绘制虚线在手机上显示实线
  6. Linux Kernel and Android休眠与唤醒
  7. Using Ant to Automate Building Android
  8. 前言:Android进阶汇总(持续更新)
  9. 【Android】入门级连接网络示例: 网页浏览
  10. Android 学习记录-ImageView显示格式