我有一个标题栏(有点像菜单)和 4 个片段(MAIN、A、B、C),其中 MAIN 应该是 backstack 的“主/根”片段。
我遇到的问题是,当用户通过菜单进入例如 MAIN > A > B > C 时。如果我只是使用 backstack,它将以我不想要的相反顺序进行。无论用户如何导航到这 3 个之一,我都需要返回按钮才能返回 MAIN。
我当前的代码(这是错误的,它在不在 MAIN 中时退出应用程序并且当前片段从其他非 MAIN 片段切换)如下所示:
private void SwitchFragment(Fragment pFragment)
{
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(R.id.main_fl_fragmentcontainer, pFragment);
if (_CurrentFragment == _Frag_Main)
ft.addToBackStack(null);
ft.commit();
_CurrentFragment = pFragment;
}