0

私はAndroidを初めて使用し、フラグメントがあり、onPause、destroyView、destroyを通過しますが、onSaveInstanceStateが呼び出されることはありません。

これは期待されていますか?

どうすれば状態を保存できますか?

@Override
public void onSaveInstanceState(Bundle outState) {
    outState.putParcelable(KEY_CATEGORY, category);
    super.onSaveInstanceState(outState);
}
4

1 に答える 1

0

onSaveInstanceState何らかの理由でフラグメントをメモリから削除/再作成しようとすると、システムが呼び出します。それ以外の場合は呼び出されません。

これがあなたのケースであり、onSaveInstanceStateそれでも呼び出されない場合は、フラグメントのコードスニペットが役立つ可能性があります。

これは、スーパークラスのこのメソッドを呼び出す行が省略されているために何度も発生します。たとえば、ここのように。必ず呼んでください。

于 2012-11-07T16:34:48.737 に答える