0

例如,如果我从A调用活动B,Android 系统如何保存活动 A 的状态?是用方法保存的吗?如果是这样,当活动 A 恢复时,为恢复活动 A 的状态而调用的方法序列是什么。我知道活动 A 会通过和)活动 B 被调用时的方法,并且一旦活动 A 需要恢复,方法就会被调用. 但是活动 A 的状态究竟是如何恢复的呢?onsaveinstancestate()Onpause()OnStop()onRestart()

4

2 回答 2

2

此图显示所有活动状态

在此处输入图像描述

此链接很好地解释了如何存储信息并在活动恢复时检索它们。


protected void onCreate (Bundle savedInstanceState)

在活动开始时调用。这是大多数初始化应该去的地方。 参数 savedInstanceState 如果活动在之前关闭后重新初始化,则此 Bundle 包含它最近提供的数据 onSaveInstanceState(Bundle)。注意:否则为null.


protected void onRestoreInstanceState (Bundle savedInstanceState)

onStart()当活动从先前保存的状态重新初始化时调用此方法,在此处给出savedInstanceState大多数实现将简单地使用 onCreate(Bundle) 来恢复它们的状态,但有时在完成所有初始化之后在这里执行它或允许子类决定是否使用您的默认实现会很方便。此方法的默认实现执行对以前被冻结的任何视图状态的恢复onSaveInstanceState(Bundle)

于 2013-02-06T19:20:40.097 回答
0

它没有。你做。使用 onPause() 来编写您的应用程序状态。onResume() 来恢复它。使用首选项来存储和加载变量值。

于 2013-02-06T19:26:15.613 回答