invalidate 三部曲序

由于整个invalidate()周期较长,继续深入会涉及屏幕刷新等底层知识,所以我们会分为三个部分来讲,分别为View发起绘制、系统处理绘制请求的逻辑、View执行真实绘制。

时序图

invalidateSequence

scheduleTraversals()为第一个分割点,以doFrame()为第二个分割点,对应时序图的序列分别为:

  • View 发起绘制: 1 - 8
  • 系统处理绘制请求的逻辑: 9 - 20
  • View 执行真实绘制: 21 - 41

目录

作者

0xforee

发布于

2018-10-12

更新于

2023-08-19

许可协议


欢迎关注我的公众号 0xforee,第一时间获取更多有价值的思考

评论