-1

我注意到,在我的应用程序onSaveInstanceState方法中,仅在活动被销毁时才第一次运行。它应该在每次被销毁时运行,不是吗?...我需要修改第一次销毁时保存的数据!...有谁知道这是真的还是我弄错了?

谢谢。

4

2 回答 2

2

如果您想在 onDestroy() 之后保存数据,请使用SharedPreferences保存数据

于 2013-05-01T10:02:34.290 回答
1

我认为在这里阅读一点可能很有用:http:
//developer.android.com/reference/android/app/Activity.html

尤其是这里:http:
//developer.android.com/reference/android/app/Activity.html#onSaveInstanceState(android.os.Bundle)

这是一个引用: “请注意,将持久数据保存在 onPause() 而不是 onSaveInstanceState(Bundle) 中很重要,因为后者不是生命周期回调的一部分,因此不会在其文档中描述的所有情况下都被调用。 "

我也认为这可能很有趣: https ://stackoverflow.com/a/5166797/1367437

我知道我还没有真正回答你的问题,但你想要达到的目标并不完全清楚。如果你想持久化一些应用程序数据,你应该使用 sharedPreferences,并将你的数据存储到它的 onPause 中。

然后,您将从 onResume 中的 sharedPreferences 中读取数据以恢复您的状态。

于 2013-05-01T10:12:20.223 回答