https://www.icode9.com/content-4-610315.html
https://xyang.blog.csdn.net/article/details/80931556

一、开始:DecorView被加载到Window中

Activity#startActivity()->
ActivityThread#handleLaunchActivity()->
  获取Window的DecorView
WindowManagerImpl#addView()->
WindowManagerGlobal#addView()->
ViewRootImpl#setView()
  对DecorView进行一个封装关联

二、ViewRootImpl遍历绘制

ViewRootImpl#setView()->
ViewRootImpl#requestLayout()->
ViewRootImpl#performTraversals()->
  WMS的窗口属性变化,来自控件树的尺寸变化、重绘请求等都引发performTraversals()的调用,并在其中完成处理。
此方法会从DecorView开始遍历,依次执行测量、布局、绘制三大工作。


0 条评论

发表回复

您的电子邮箱地址不会被公开。