首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Android完美解析setContentView 你真的理解setContentView吗?「建议收藏」

源码分析: 说到Activity的setContentView,咱们直接找到一个Activity中的setContentView点进去看看!...public void setContentView(View view) { getWindow().setContentView(view); initActionBar...(); } 点进来之后我们发现它里边调用了getWindow.setContentView,我们点击getWindow看看里面是什么!...上面,我们在点击了重填按钮后,我们的setContentView使用的是老大,即setContentView(int id),回想刚才我们分析的源码,老大是通过反射拿到我们的view,而每次反射拿到的view...都不是同一个view,也就是说我们在onCreate中setContentView(R.layout.activity_main)和在点击了重填后setContentView(R.layout.activity_main

97130

setContentView的时候,到底发生了什么

不管怎么说,当我们在Activity中调用setContentView的时候,其实内部调用了PhoneWindow的setContentView。...PhoneWindow的setContentView方法 探索PhoneWindow 既然实质是用了PhoneWindow的setContentView,那么我们就来看看这里的setContentView...总结 所以整个setContentView内部做了如下事: 在Activity中调用setContentView(实际调用PhoneWindow#setContentView) 新建DecorView实例...setContentView方法: @Override public void setContentView(View view) { setContentView(view, new ViewGroup.LayoutParams...这里总结下到目前为止,AppCompatActivity在setContentView的时候做了啥: 以前到这里到流程是: 调用setContentView(实际调用PhoneWindow的setContentView

24130
领券