UI卡顿、掉帧的原因

UI卡顿掉帧的原因:

  在规定的16.7ms内 在下一帧VSync的到来GPU和CPU没有准备好下一帧画面

滑动优化方案

  CPU:
  对象的创建,调整,销毁
  预排版(布局计算,文本计算)
  预渲染(文本异步绘制,图片解码等)

  GPU:
  纹理渲染
  视图混合

异步绘制过程
UI卡顿、掉帧的原因_第1张图片
E1CA3DA9-F74C-4F29-8F6F-226684469A5D.png

在屏渲染

当前屏幕渲染,指的是GPU的渲染操作是在当用于显示的屏幕缓冲区中进行

离屏渲染

指的是GPU在当前屏幕缓冲区外开辟新的一个缓冲区进行渲染操作
*圆角(maskTobounds一起使用)
*图层蒙版
*阴影
*光栈化

为何避免离屏渲染

离屏渲染会增加GPU的工作量,总耗时超过16.7ms就会引起UI卡顿掉帧
1.会创建新的渲染缓冲区
2.上下文切换

你可能感兴趣的:(UI卡顿、掉帧的原因)