androidsetContentView处理流程

1、 Activity在onCreate()方法之前调用attach()方法,在attach方法中会创建Window对象。Window对象创建时并没有创建Decor对象。

成都服务器托管,成都创新互联提供包括服务器租用、成都移动服务器托管、带宽租用、云主机、机柜租用、主机租用托管、CDN网站加速、域名注册等业务的一体化完整服务。电话咨询:028-86922220

2、 用户在Activity中调用setContentView()方法。

3、 setContentView()调用Window的setContentView()方法。这时会检查DecorView是否存在,如果不存在则调用installDecor()方法创建DecorView对象;之后调用generateLayout()方法把用户自己的View添加到DecorView中;最后回调Callback的onContentChanged()方法通知用户界面改变了。

注意事项

  1. Window是一个抽象类,提供了各种窗口操作的方法,比如设置背景标题等。

  2. PhoneWindow是Window的唯一实现类,它里面实现了各种添加背景主题ContentView的方法,内部通过DecorView来添加顶级视图。
  3. 每一个Activity上都有一个Window,可以通过getWindow()获取;DecorView继承于FrameLayout,setContentView()则是添加在它里面的@id/content里面。

4.setContentView()里面创建了DecorView,根据Theme/feature添加了对应的布局文件,当setContentView()设置显示后会回调Activity的onContentChanged()方法。


文章题目:androidsetContentView处理流程
URL标题:http://bzwzjz.com/article/pppcdg.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 商城网站建设 成都网站建设 成都商城网站建设 成都网站设计 成都响应式网站建设 成都网站建设 定制级高端网站建设 成都网站建设 成都网站设计 重庆外贸网站建设 网站建设方案 高端网站设计推广 手机网站建设套餐 重庆网站建设 网站设计 成都网站建设 成都网站制作 高端品牌网站建设 泸州网站建设 专业网站建设 专业网站设计 重庆网站建设