UI总结

作者: success_flower | 来源:发表于2019-11-20 10:27 被阅读0次
    1.UI显示图像原理
    CUP->GPU->Frame Buffer ->视频控制器->显示器
    1.CPU:负责提交位图
    2.GPU:负责渲染内容并提交到帧缓冲区
    3. Frame Buffer :存放渲染好的内容
    4:视频控制器:根据垂直显示信号的提示去帧缓冲区提取屏幕要显示的内容
    5:显示器:显示内容
    
    2.UI卡顿掉帧原因
    原因:CPU+GPU工作的时间>16.67ms导致掉帧
    CPU工作:
    1.Layout:文本处理, 文本宽高计算,布局计算,高度缓存
    2.Rendering:文本绘制,图片解码,
    3.提交位图:
    4.对象的创建,操作,销毁
    GPU工作:
    顶点着色,元图组装,栅栏化,片段着色,片段处理
    
    3.离屏渲染
    当前屏幕渲染:当前用于显示的缓冲区进行渲染
    离屏渲染:CPU离屏渲染&GPU离屏渲染
    GPU离屏渲染:在当前屏幕缓存区外开辟了一块缓冲区进行渲染操作
    为何要避免离屏渲染?
    1.需要额外开辟一块缓冲区供渲染操作
    2.onscreen和offscreen上下文切换才能完成
    3.渲染的每一帧都会这样处理
    导致:GPU工作量加大->CPU+GPU>16.67ms
    
    5.UIView和CALayer
    单一指责原则:
    UIView:负责提供内容给Layer,负责处理触摸等事件,参与响应链
    CALayer:负责显示contents
    

    相关文章

      网友评论

          本文标题:UI总结

          本文链接:https://www.haomeiwen.com/subject/signictx.html