5

私の問題は一般的にこの質問で説明されています: バックスタックにフラグメントのインスタンス状態を正しく保存する方法は?

しかし、受け入れられた答えがそれにどのように関連しているか理解できません。

短くするために:

  1. 2 つのフラグメント A と B があります。

  2. transaction.replace() を使用して A から B に移動し、トランザクションをバックスタックに追加します。

  3. 画面を回転させます -> フラグメント A は表示されませんが、onSaveInstanceState が呼び出されます - この時点まではすべて問題ありません。

  4. もう一度画面を回転させます。再び A の onSaveInstanceState が呼び出されますが、現在はビューが存在しないため、状態を保存できません。

受け入れられた回答が示唆するように、getFragment/putFragment を使用する目的は何ですか? 私のフラグメントがバックスタックにある場合、それへの参照を保持する意味はないと思います。ありがとう。

4

0 に答える 0