开始流程介绍之前,我们先明确几个概念:
1.DecorView:最顶层的View,继承自ViewGroup。
2.ViewRootImpl:最顶层的ViewParent,并且是整个View绘制流程的控制者。View和屏幕的关联,以及绘制流程都由该类控制。
3.PhoneWindow:用来装载DecorView,我们activity中setConentView方法最终都会交给PhoneWindow的setConentView来实现。
【android源码学习-View如何显示到屏幕上】4.WindowManagerImpl:WindowManagerGlobal的代理类,基本上功能都是交由WindowManagerGlobal处理。
5.WindowManagerGlobal:视图的装载类,应用每个界面的View都会保存在WindowManagerGlobal中,每个界面的PhoneWindow也都保存在WindowManagerGlobal中。
6.IWIndowSession:WIndowManageService在客户端的Binder代理类,最终的界面显示,需要通过它里面的方法真正的显示到屏幕上。
推荐阅读
- android源码学习-事件分发处理机制
- android源码学习-activity启动流程(android8.0源码)
- android源码学习-View绘制流程
- 安卓源码探究|android源码学习-目录
- 安卓源码探究|android源码学习-Handler机制及其六个核心点