以编程方式更改Android中的现有布局

时间:2014-11-01 04:48:19

标签: android layout

我在android中的Actionbar中使用了带Tab的片段。 Bellow是我在onCreateView上设置片段布局的地方:

mFragmentView = inflater.inflate(R.layout.second_activity, container, false); 
return mFragmentView;

我的问题是:我可以通过编程方式更改现有布局(R.layout.second_activity)吗(R.layout.sample_layout)吗?

1 个答案:

答案 0 :(得分:0)

getFragmentManager().beginTransaction()
           .detach(this)
           .attach(this)
           .commit();

这将强制片段再次调用onCreateView。在这里,您可以返回R.layout.sampleLayout而不是通常的布局。在调用片段事务之前在片段中设置一个变量,以便在调用此函数时选择正确的布局。

第二种解决方案是将初始布局包装在viewGroup中,然后调用getView.removeAllViews(),为新布局充气,并将其添加到根视图中。