1

フラグメントの A、B、C、D があるとします。フラグメント間の通常の動きは A -> B -> C -> D です。ここで、A -> D からジャンプしたいが、D から onBackPressed() したいとします。それぞれ C に戻り、次に B に戻ることができます。これを行う方法はありますか?私が試みていたコードはこのようなものでしたが、実際には機能していません。

 public void showNestedFragment(LinkedList<Fragment> fragments, boolean allowBack)
 {

    FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();


    if (allowBack == false) // pop all thats in the backstack
        getSupportFragmentManager()
                .popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);

    for(Fragment fragment : fragments){
         fragmentTransaction.add(R.id.fragment, fragment);

          if (allowBack)
          {
               fragmentTransaction.addToBackStack(null);
          }

           try
           {
               fragmentTransaction.commit();
           }
          catch (IllegalStateException e)
           {
               e.printStackTrace();
           } 
    }
 }
4

1 に答える 1