Android 显示/隐藏片段并将其添加到Backback

Android 显示/隐藏片段并将其添加到Backback,android,android-fragments,show-hide,back-stack,Android,Android Fragments,Show Hide,Back Stack,我有4个菜单选项的菜单。。。每个选项都显示了相应的片段。 我有3个函数来添加、显示和隐藏片段: private void addFragment(Fragment newFragment, String fragmentName) { fragmentManager .beginTransaction() .add(R.id.content_frame, newFragment, fragmentName).addToBackStack(null)

我有4个菜单选项的菜单。。。每个选项都显示了相应的片段。 我有3个函数来添加、显示和隐藏片段:

private void addFragment(Fragment newFragment, String fragmentName) {
    fragmentManager
    .beginTransaction()
    .add(R.id.content_frame, newFragment,
            fragmentName).addToBackStack(null)
    .commit();
}
private void hideFragment(Fragment existingFragment) {
    if(existingFragment!=null && existingFragment.isVisible()){
        fragmentManager.beginTransaction().hide(existingFragment).addToBackStack(null).commit();
    }   
}

private void showFragment(Fragment existingFragment) {
    if(existingFragment!=null){
        fragmentManager.beginTransaction().show(existingFragment)
            .addToBackStack(null).commit();
    }
}
NavitemSwitch逻辑如下所示:

onNavItemSelected(int id) {
      switch (id) {
      case 1: //option 1 - hide rest of the fragments and show Option1Fragment
            hideFragment(option2Fragment);
            hideFragment(option3Fragment);
            hideFragment(option4Fragment);

            if (Option1FragmentDoesnotExist) { //create option1Fragment and add it to FragmentTransaction
                option1Fragment = new option1Fragment();
                addFragment(option1Fragment,"option1Fragment");
            } else
                showFragment(option1Fragment);      
              break;
    case 2:
        //same as option 1
    }
}
我期望发生的事情: 现在发生了什么: 我知道我在后台添加和检索碎片时犯了一些错误。但是,我不确定它到底是什么。我试着把所有这些都作为同一笔交易的一部分。。那力量也起作用了。。另外,我不想替换碎片。。。希望我的问题是对的。。
感谢您的帮助,谢谢

你能试着简化你的结果和你的期望吗?在这一段中很难确定。@Codedroid,如果不复制/粘贴原始问题,您能解释一下您预期会发生什么吗?那么发生了什么?你能详细说明你所说的“菜单”是什么意思,你所说的“碎片作品”是什么意思吗?如果您的原始解释令人困惑,复制并粘贴它可能无助于解释您的需要。我实际上编辑了原始问题以反映我的评论。。。我将再次尝试编辑实际问题,以使其更清晰。。Thanks@Prmths.. 我添加了一些图片来解释这个问题。。现在好点了吗?知道发生了什么事吗?谢谢您是否删除了覆盖的onDestroyView中的任何片段视图?