之前我们已经花了十一篇的博文分析了与ViewRootImpl相关的功能,今天我们就来总结一下ViewRootImpl。
它的主要作用我的总结为如下:
- 链接WindowManager和DecorView的纽带,或者可以说是Window和View之间的纽带;
- 完成View的绘制过程,包括measure、layout、draw过程;
- 向DecorView分发收到的用户发起的event事件,如按键/触屏等事件。
(1)链接WindowManager和DecorView
大家如果想深入了解,请参考如下三篇博文:
- Android窗口机制(一)——Window,PhoneWindow,DecorView理解
- Window窗口机制(二)——Window,WindowManager理解
- Window窗口机制(三)——WindowManager,ViewRootImpl,View理解
(2)完成View的绘制过程
可以从以下四篇博文详细了解:
(3)事件分发机制
可以从以下四篇博文详细了解:
- Android事件分发机制——ViewRootImpl篇(前传)
- Android事件分发机制——View(一)
- Android事件分发机制——ViewGroup(二)
- Android事件分发机制——示例(三)
ViewRootImpl事件分发到ViewGroup流程
ViewGroup事件分发到View流程