戻るボタンと、奇妙な動作が発生しました。Fragments
です。ここに私の状況は、私は3 Fragments
、f1
、f2
、およびF3 .
を持っているf2
を立ち上げるf1
内Button
がありますされています戻るボタンが正しくない部分を表示する
getSupportFragmentManager()
.beginTransaction()
.addToBackStack("f1")
.replace(R.id.fragHook, f2,
TAG).commit();
この取引は完璧に動作します。私はちょうど見つける2つの断片の間を行き来することができます。 f2の中で、私はユーザがセルを選択できるRecyclerView
を持っています。ユーザーがセルを選択すると、私はf3
を持ち出すが、私はbackstackにf2
を追加しないでください:
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragHook, f3)
.commit();
Fragment
f3
正しく表示されています。このプロセスで初めて、戻るボタンをクリックすると、f1
が再び正しく表示されます。これらの同じ手順を繰り返すと問題が発生します。 Button
内にはf1
が表示され、f2
にはRecyclerView
が表示されます。次に、セルが選択されて、f3
が再び表示されます。今すぐ戻るボタンをクリックすると、フラグメントf2
が表示されます。
f1
とf2
の両方についてonCreateView
が呼び出されました。 f2
Fragment
が表示される原因は何ですか?