如何在onResume()中检索onSaveInstanceState()包?

And*_*res 12 android android-lifecycle android-activity

我遇到了与保存我的活动状态相关的问题.我在这里搜索并阅读了很多问题但是我无法得到我的问题的答案.

我有一个ActivityA 2 Fragments.的ActivityA保持其由显示数据Fragments.当我推出一个新的Intent为我设置ActivityActivity一个暂停(不被破坏),onPause()onSaveInstanceState()方法被调用,所以我救我的所有数据onSaveInstaceState().

当我从我的设置返回时使用后退按钮ActivityA再次显示但是onCreate()没有调用方法因为Activity没有被销毁,而是onResume()方法被调用但是我在ActivityA中丢失了我的变量状态而我无法访问Bundle我保存的onSaveInstanceState()因为onCreate()不叫.

那么onSaveInstanceState()只有在旋转屏幕时才有用吗?如何访问我保存的所有数据onSaveInstanceState()?或者我应该将它们保存到文件中或以后SharedPrefs访问它们onResume()

Zhe*_*ang 26

这可以帮忙吗?
1.使用getIntent().putExtras()onStop()将数据保存到活动的包.
2.然后getIntent().getExtras()onResume()找回它.

你应该在访问捆绑包之前进行空检查:)

  • Android开发人员如何建议我们使用onSaveInstanceState,onRestoreInstanceState和onCreate令人难以置信,但这非常不稳定。感谢分享,解决了我的问题 (2认同)
  • 只需在`onResume()`中调用`getIntent().getExtras()`时获取null即可。请更详细一点? (2认同)