3

我似乎和其他人有相反的问题。:)

每当我从一个活动导航到下一个活动时,都会调用我的 onSaveInstanceState。我签入了 LogCat,它绝对不会杀死活动。另外,我看到返回时未调用 onRestoreInstanceState ,因此它必须仍在内存中。

我认为它仅在释放内存或方向更改时才被调用。

4

2 回答 2

5

是的,onSaveInstanceState()在活动暂停时调用。这是因为一旦 Activity 暂停,Android 可以随时终止进程(无需调用任何其他生命周期方法)。如果 Activity 在进程被杀死之前恢复,Android 会意识到它不需要调用onRestoreInstanceState(),因此它不会进行调用(这是一种优化)。

于 2012-11-13T10:32:31.910 回答
1

医生怎么说?

“如果调用,此方法将在 onStop() 之前发生。无法保证它是否会在 onPause() 之前或之后发生。”

于 2016-01-10T19:41:18.627 回答