Activity、Window、View的关系

Activity在onCreate之前调用attach方法,将Activity其添加到ActivityThread中,在attach方法中会创建Window对象。Window对象创建时并没有创建DecorView对象。用户在Activity中调用setContentView之后,会调用Window的setContentView方法,这时会检查DecorView是否存在,如果不存在则创建一个DecorView对象,然后把用户定义的View布局添加到DecorView中。
DecorView分为两部分:TitleView和contentView,当需要在Activity中请求全屏显示布局的时候,需要调用requestWindowFeature()方法,该方法必须放在setContentView前面,是为了去掉DecorView中的TitleView,才能将我们自己的布局全屏显示。

你可能感兴趣的:(activity,window,view)