gpt4 book ai didi

android - 为什么 onRestoreInstanceState() 永远不会被调用

转载 作者:IT老高 更新时间:2023-10-28 21:38:02 35 4
gpt4 key购买 nike

我正在尝试在我的 Activity 中保存数据而不是恢复它。我将数据保存在 onSaveInstanceState() 中,然后尝试恢复 onRestoreInstanceState() 中的数据。

我设置断点,方法 onSaveInstanceState() 被调用。但是 onRestoreInstanceState()onCreate() 从来没有。

这是我的步骤:

  1. 开始我的 Activity
  2. 按手机上的“主页”按钮。 onSaveInstanceState() 被调用。
  3. 单击启动器中的图标并再次启动我的Activity

此时,只有 onRestart() 被调用。但不是 onRestoreInstanceState()onCreate()

有人知道为什么吗?

最佳答案

好吧,如果调用 onRestart(),实例变量的值将由应用程序堆栈本身维护,因此您不需要恢复它们。

onCreate() 方法只有在你的 ActivityonStop() 被调用并且进程被杀死时才会被调用。

请引用Activity生命周期Android Activity Life Cycle以获得清晰的理解。

您可能需要检查是否调用了 onStop() 方法以及您的进程是否被终止。我不认为您的进程会被您描述的场景杀死。

onRestoreInstanceState() 方法非常棘手。我不知道它是什么时候被调用的,但我看到它在从 Potrait 更改为 Landscape 时被调用过一次。

关于android - 为什么 onRestoreInstanceState() 永远不会被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5574462/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com