0
1つのアクティビティに複数のフラグメントがあります。フラグメントを切り替えるときにフラグメントの状態を保存したい。しかし、アクティビティは再作成されず、onSaveInstanceState
は呼び出しません。何とかバンドルを保存することはできますか(たとえば、)?フラグメントの状態を保存します。
1つのアクティビティに複数のフラグメントがあります。フラグメントを切り替えるときにフラグメントの状態を保存したい。しかし、アクティビティは再作成されず、onSaveInstanceState
は呼び出しません。何とかバンドルを保存することはできますか(たとえば、)?フラグメントの状態を保存します。
新しいフラグメントを作成するたびに、このようにメソッドaddToBackStack()
を使用してください。
if (fragment == null) {
fragment = new MyFragmentClass();
manager.beginTransaction()
.add(R.id.your_fragment_id, fragment)
.addToBackStack(null)
.commit();
}
フラグメントはコミット後に記憶され、後でスタックからポップされるとその動作が逆になります。
しかし、バンドルに追加データを保存したい場合はどうすればいいですか? – sandeor30r
[1回だけ、バックスタックにフラグメントのインスタンス状態を正しく保存する方法は?](https://stackoverflow.com/questions/15313598/once-for-all-how-to-correctly-save -instance-of-back-stack-in-back-stack) – 0X0nosugar