我正在尝试在我的活动中保存数据,而不是恢复它。我将数据保存在onSaveInstanceState()上,然后尝试恢复onRestoreInstanceState()中的数据。
我设置了断点,调用了onSaveInstanceState()方法。但onRestoreInstanceState()或onCreate()从来没有这么做过。
以下是我的步骤:
Activity。onSaveInstanceState()接到电话。Activity。此时,只有onRestart()被调用。但不是onRestoreInstanceState()或onCreate()。
有人知道为什么吗?
发布于 2011-04-07 00:40:20
如果调用onRestart(),则实例变量的值将由应用程序堆栈本身维护,因此不需要还原它们。
只有当您的onCreate()的onStop()被调用并且进程被终止时,才会调用Activity方法。
请参考Activity生命周期Android活动生命周期以获得清晰的理解。
您可能需要检查是否调用了onStop()方法,以及进程是否被终止。我不认为您的过程会被您描述的场景所扼杀。
onRestoreInstanceState()方法非常棘手。我不知道它的确切名称是什么时候,但我看到它是一次调用时,从诗人到景观。
发布于 2013-08-05 11:03:57
来自医生:
只有在存在要恢复的保存状态时,系统才调用onRestoreInstanceState()。
发布于 2011-04-07 01:23:57
https://stackoverflow.com/questions/5574462
复制相似问题