activity 、window与view的关系(下)

在activity的attacth方法中,通过policymanager 的makenewwindow来创建window

而window的具体实现是phonewindow

 

接下来通过setcontentview来加载view

具体过程分析:

(1)如果没有DecorView,创建它

创建时通过inflater来加载view

(2)将view添加到DecorView的mcontentparent中

(3)回调Activity 的oncontentchanged方法通知activity视图已经发生了

(4)经过三个步骤,decorview已经被创建并且加载完毕,但还没被windowmanager识别,添加到window中。

然后在onresume方法中调用activitythread的makevisible(),decorview 才真正显示,activity的视图才看到。

 

posted @ 2016-08-10 19:29  东方行知  阅读(117)  评论(0)    收藏  举报