如何禁用片段中的抽屉并返回正确的片段

时间:2015-04-22 12:07:30

标签: android fragment drawer

我有一个带有Fragment布局的主Activity。抽屉有3个选项:

Fragment[1], Fragment[2], Fragment[3].

Inside Fragment [2]和Fragment [3]是一个按钮。这个按钮打开其他片段。片段[4]。

我想片段[4]没有抽屉,但有一个后退按钮。

这是Fragment [2]

中的onClick代码
Fragment fragment = new InstalacionesEncontradasFragment();
Bundle bundle = new Bundle();
bundle.putSerializable("key", this.instalacionesConCategorias);
fragment.setArguments(bundle);
FragmentManager fragmentManager = getFragmentManager();

FragmentTransaction mFragmentTransaction = fragmentManager.beginTransaction();
mFragmentTransaction.addToBackStack(null);
mFragmentTransaction.replace(R.id.main_frame_container, fragment, "ACTIVIDADES").commit();

并在Fragment [4]

onCreate方法:

getActivity().getActionBar().setDisplayHomeAsUpEnabled(true);

但是这个解决方案不起作用。

如何禁用抽屉?我应该在哪里实现后退按钮?在Fragment [2]或Fragment [3]中?

1 个答案:

答案 0 :(得分:9)

  1. 您可以使用:

    mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
    

    这将锁定swipe

  2. 上的抽屉开口
  3. 添加第

    getActivity().getActionBar().setDisplayHomeAsUpEnabled(true);
    
  4. 在Activity中,所有片段都像片段1,2,3和4。可能在你的情况下,片段4来自差异活动而不是片段2.所以,后退按钮按下不起作用