我在想这是否可以完成。基本上我有一个布局,其中有2个片段,我用于大多数标签,但在2个标签中,我想添加更多片段以显示更多内容。更改标签时是否可以将内容视图更改为不同的布局?根据操作栏选项卡更改活动内容视图
如果不能完成,我想创建一个布局,其中包含我需要的所有片段部分,只是更改片段的布局,以便我不使用的那些不会“显示”。我不是故意使用FragmentTransaction.hide()
,因为我希望片段在其他人不使用时填满屏幕。这是一个坏主意,还是有更简单的方法去做我想要的?
,这里是我的活动代码和标签
public class Tabs extends Activity{
long deleteID;
@Override
public void onCreate(Bundle create){
super.onCreate(create);
setContentView(R.layout.main_layout);
createTabs();
ActionBar bar = getActionBar();
bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
bar.setDisplayOptions(0, ActionBar.DISPLAY_SHOW_TITLE);
bar.setDisplayHomeAsUpEnabled(true);
if(create != null){
bar.setSelectedNavigationItem(create.getInt("Home",0));
}
}
我还添加选项卡的诸如此类但那并不重要
这是动作条的子类
private class TabListener implements ActionBar.TabListener{
TabContent mFragment;
public TabListener(TabContent fragment) {
mFragment = fragment;
}
@Override
public void onTabReselected(Tab tab, android.app.FragmentTransaction ft) {
}
@Override
public void onTabSelected(Tab tab, android.app.FragmentTransaction ft) {
ListFragment newListFragment = new BowlersListFragment();
Fragment newFragment = new BowlerEntryFrag();
ft = getFragmentManager().beginTransaction();
ft.replace(R.id.frameOne, newListFragment);
ft.replace(R.id.frameTwo, newFragment);
ft.addToBackStack(null);
ft.commit();
}
@Override
public void onTabUnselected(Tab tab, android.app.FragmentTransaction ft) {
if(ft != null){
ft.remove(mFragment);
}
}
}
}
我试图做Activity.setContentView(r.layout.newView)
但不会工作