什么时候调用onSaveInstanceState()方法的情况?

Raj*_*Raj 12 java android

我阅读的所有资料都提到了几个案例,并以"其他一些案例"结束.在视图/活动中调用onSaveInstanceState方法时的所有情况是什么?

小智 7

每当有活动的软杀伤时.即当方向改变或由于内存不足而导致进程被android杀死时.

当用户故意离开活动时,不会调用它.

请参阅此链接:https://sites.google.com/site/jalcomputing/home/mac-osx-android-programming-tutorial/saving-instance-state


PHF*_*PHF 7

如果视图具有id,则默认情况下将调用onSaveInstanceState().

谷歌说:"默认实现通过在层次结构中具有id "的每个视图上调用onSaveInstanceState()来为您处理大多数UI每个实例状态.

更多信息在这里.


Gui*_*rie 5

文档

在活动可能被杀死之前调用此方法,以便在将来某个时间返回时可以恢复其状态.


GLe*_*Lee 5

另外要注意,onSaveInstanceState可以在片段后直接调用onCreate(onCreateView,onActivityCreated,onStart,和onResume将不被调用),如果上述DNA片段连接到一个活性,但是未示出,然后被破坏.因此,您需要确保所引用的所有内容onSaveInstanceState都已初始化onCreate,否则您将面临风险NullPointerException.