問題があり、どこにも解決策が見つかりません。
戻るボタンを押しても、アプリは前のフラグメントに戻らず、代わりにアクティビティを閉じます。
[1]、[2]、[3]、[4] の 4 つのフラグメントを表示するアクティビティがあります。最初の 3 つのフラグメントはアクション バーで切り替えることができますが、それらをバック スタックに追加したくありません。
フラグメント [4] は、フラグメント [3] で選択された項目の詳細ビューです。[4] を押すと、アプリを閉じずにフラグメント [3] に戻りたい。
トランジションは、フラグメントが配置されているアクティビティによって次のように行われます。
private void replaceFragment(Fragment fragment, boolean toBackStack){
if(fragment != null){
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.container, fragment);
if(toBackStack)
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
}
}
[3] から [4] への遷移の場合を除き、toBackStack は常に false です。
すべてのトランジションで toBackStack true を渡すと、とにかくアクティビティが閉じます。