私は Android フラグメントに非常に問題があります... バックスタックが次のようになっているとします。
[C]
[B]
[A]
---
戻るボタンを押すと飛び出し、スタックの一番上にFragment C
残ります。では、バックスタックを維持しながらFragment B
スワップするにはどうすればよいでしょうか。作業中は見えませんのでご注意ください。Fragment C
Fragment D
Fragment B
[C] <- [D] [D]
[B] -----> [B]
[A] [A]
--- ---
このように、戻るボタンを押すとFragment D
飛び出し、上に残りFragment B
ます。Fragment C
スタックから完全に削除されます。
このように各フラグメントをスタックに追加します
FragmentTransaction ft = manager.beginTransaction();
ft.replace(id, instance, getTag(instance));
ft.addToBackStack(getTag(instance));
ft.commit();
なしで同じ呼び出しを行うことでこれを達成できると思いましたがaddToBackStack
、作成Fragment D
してFragment B
重複しました。