我一直想知道为什么我们把布局资源传递给setContentView()方法,我不确定我完全理解它的作用。我所知道的就是我可以直接传递一个布局资源文件,或者在膨胀它之后简单地传递一个视图。
案例1:
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);案例2:
super.onCreate(savedInstanceState);
View activity = View.inflate(MainActivity.this, R.layout.activity_main, null);
setContentView(activity);但这两种情况有什么不同呢?它们是否相似,或者setContentView是否会像我在案例2中所做的那样,在案例1的幕后自动膨胀布局资源文件?
发布于 2021-06-12 17:18:36
如果您看到setContentView结构,就会找到它
@Override
public void setContentView(int resId) {
ensureSubDecor();
ViewGroup contentParent = mSubDecor.findViewById(android.R.id.content);
contentParent.removeAllViews();
LayoutInflater.from(mContext).inflate(resId, contentParent);
mAppCompatWindowCallback.getWrapped().onContentChanged();
}我认为没有什么不同
https://stackoverflow.com/questions/67947133
复制相似问题