什么时候不调用onRestoreInstanceState?

时间:2020-02-02 16:14:03

标签: android android-lifecycle activity-lifecycle onsaveinstancestate

Docs描述了何时调用onRestoreInstanceState

在从先前保存的状态重新初始化活动时,在onStart()之后调用此方法,在此处已保存状态。 (...) 在onStart()onPostCreate(Bundle)之间调用此方法。仅在重新创建活动时才调用此方法。 如果出于任何其他原因调用onStart(),则不会调用该方法

我很好奇在onStart()的上下文中“ onRestoreInstanceState由于其他原因被称为 ”是什么意思?

1 个答案:

答案 0 :(得分:0)

Activity的正常生命周期如下:

  • onCreate()
  • onStart()
  • onResume()
  • onPause()
  • onStop()
  • onDestroy()

如果onStart()被另一个onStop()完全遮盖,则ActivityActivity之间的生命周期回调可能会反复发生。在这种情况下,当onStop()被另一个Activity完全遮盖时,将调用Activity。当再次使Activity可见时,onStart()将被称为,而不会被调用onRestoreInstanceState() ,因为不会重新创建Activity