Android ActionBar标签赢得';不能在片段事务上消失
我有一个导航抽屉,可以链接三个片段。所有片段都有一个具有不同标题的操作栏。片段A和B没有选项卡,而片段C有选项卡1和选项卡2。在它们之间导航工作正常,并显示不同的ActionBar标题,但当我从C导航到其他片段时,选项卡仍然显示在片段A和B的ActionBar中。当我从C导航到片段A和B时,如何“隐藏”选项卡 谢谢 在片段之间切换Android ActionBar标签赢得';不能在片段事务上消失,android,Android,我有一个导航抽屉,可以链接三个片段。所有片段都有一个具有不同标题的操作栏。片段A和B没有选项卡,而片段C有选项卡1和选项卡2。在它们之间导航工作正常,并显示不同的ActionBar标题,但当我从C导航到其他片段时,选项卡仍然显示在片段A和B的ActionBar中。当我从C导航到片段A和B时,如何“隐藏”选项卡 谢谢 在片段之间切换 switch (possition) { case 0: fragment = new FragmentA();
switch (possition) {
case 0:
fragment = new FragmentA();
break;
case 1:
fragment = new FragmentB();
break;
case 2:
fragment = new FragmentC();
break;
default:
break;
}
FragmentManager frgManager = getSupportFragmentManager();
frgManager.beginTransaction().replace(R.id.content_frame, fragment)
.commit();
片段C
private String[] tabs = { "1", "2"};
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_utilities, container, false);
viewPager = (ViewPager) rootView.findViewById(R.id.pager);
actionBar = ((ActionBarActivity)getActivity()).getSupportActionBar();
mAdapter = new TabsPagerAdapter(getActivity().getSupportFragmentManager());
viewPager.setAdapter(mAdapter);
actionBar.setHomeButtonEnabled(true);
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
for (String tab_name : tabs) {
actionBar.addTab(actionBar.newTab().setText(tab_name)
.setTabListener(UtilitiesFragment.this));
}
试着简单地将你的导航模式设置为非选项卡式
setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
…然后在相关时将其设置回选项卡模式
另一种选择是通过ActionBar
上的removeTab
方法简单地删除选项卡,然后在相关时再次添加它们
需要注意的一点是,从API级别21开始,这种导航方法就被弃用了。试着简单地将您的导航模式设置为非选项卡类型
setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
…然后在相关时将其设置回选项卡模式
另一种选择是通过ActionBar
上的removeTab
方法简单地删除选项卡,然后在相关时再次添加它们
需要注意的一点是,这种导航方法在API级别21时就已经被弃用了。事实上,今天我第二次提出这种建议:在片段中使用TabLayout,而不是ActionBar选项卡
事实上,我今天第二次提出这个建议:在片段内部使用TabLayout,而不是ActionBar选项卡 使用“setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);”在非制表符片段上和带有制表符的片段上的“setNavigationMode(ActionBar.NAVIGATION_MODE_TABS)”起作用。目前,我可以将其用作临时修复,但我想知道如何隐藏使用“setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);”的选项卡在非制表符片段上和带有制表符的片段上的“setNavigationMode(ActionBar.NAVIGATION_MODE_TABS)”起作用。现在我可以将其用作临时修复,但我想知道如何隐藏