大佬教程收集整理的这篇文章主要介绍了android – 可以将多个视图添加到Activity的根视图吗?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
这可能听起来很愚蠢,但实际上我找不到任何东西.
可以在Android中的活动根视图中添加多个视图吗?
所以例如我可以这样:
setContentView(R.layout.main);
setContentView(gLView);
setContentView(otherView);
或者只是将其作为视图检索
FrameLayout layout = (FrameLayout)this.getWindow().getDecorView().findViewById(android.R.id.content);
layout.addView(view1);
layout.addView(view2);
layout.addView(view3);
layout.addView(view4);
这一切似乎都适用于我测试的设备,但它是否能保证能够在所有这些设备上运行?
或者我应该人为地创建单个FrameLayout以添加到根视图并将所有内容添加到此FrameLayout?
更多实验:
1)如果我不使用setContentView并打印:
Log.d("Test",this.getWindow().getDecorView().findViewById(android.R.id.content).getClass().getName());
我得到:android.widget.FrameLayout
2)如果我将内容视图设置为例如GLSurfaceView并打印相同的Log.d
它还会打印android.widget.FrameLayout
3)如果我根本不使用setContentView,只需这样做
FrameLayout layout = (FrameLayout)this.getWindow().getDecorView().findViewById(android.R.id.content);
layout.addView(myView);
它附上了视图
所以我假设android.R.id.content不返回你设置的setContentView,而是你设置的内容,或者活动中的实际根视图(结果是FrameLayout?)
我可以通过这种方式添加多个孩子,但问题是:
我被允许这样做吗?
如果要添加新内容View,则应使用addContentView()方法而不是setContentView(),这将导致替换现有内容.
以上是大佬教程为你收集整理的android – 可以将多个视图添加到Activity的根视图吗?全部内容,希望文章能够帮你解决android – 可以将多个视图添加到Activity的根视图吗?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。