我有一个主要的布局文件,它已经变得过大并且变得非常难以阅读。我目前只使用setContentView(int layoutResID)来扩展整个布局。
我最近发现了addContentView(View视图,ViewGroup.LayoutParams参数)方法,在我浪费任何时间进行重大更改之前,我想要其他人的一些输入。
我的主要布局文件目前看起来像这样:
frame layout
relative layout
...
linear layout a
...
linear layout b
...
linear layout c
...
linear layout d
...
linear layout e
...
/frame layout
某些线性布局非常复杂。
我的问题是,如果我将每个复杂的线性布局分成他们自己的xml文件,然后使用addContentView连续对每个文件进行充气,我最终会得到与使用setContentView的当前实现相同的行为吗?
我的主要动机是每个单独的布局文件只包含一个复杂的线性布局,以便更容易阅读xml文件。
答案 0 :(得分:0)
您还可以使用Layout Inflater来扩充这些不同的布局。并动态地在框架布局中添加这些膨胀的视图。例如
View v;
if(condition){
v=inflater.inflate(R.layout.a)
}
else if(condition){
v=inflater.inflate(R.layout.b)
}
FrameLayout f= findviewbyId(R.id.frameLayout)
f.addView(v);