Android docsの FragmentTransaction 項目では、メソッドは、現在のビューに追加されたすべてのフラグメントに対してreplace()
メソッドを呼び出してからメソッドを呼び出すことと同じであると説明されています。この場合、前のフラグメントを復元するには、 を使用できます。これは、トランザクションの状態がまだフラグメント マネージャーによって管理されており、スタックからポップしたときにその操作を元に戻すことを意味します。remove()
add()
addBackToStack()
一方、 を使用してトランザクションを実装するadd()
とadd().addBackToStack()
、 を使用するだけでなく、detach()
メソッドを使用して を使用してフラグメントを回復できます。attach()
これらは と同じ動作をしaddBackToStack()
ます。
では、これらのシナリオの舞台裏での違いは何でしょうか?