假设我有片段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();
}
}
}
答案 0 :(得分:1)
你有片段,所以你可以做任何你想做的事情。您应按照以下步骤来实现此目的。