Android 启动新活动时会发生什么情况?

Android 启动新活动时会发生什么情况?,android,Android,我从一个活动中调用一个意图:我想知道当我调用意图时,该活动会发生什么,我的意思是,它被破坏了吗?暂停?顶上 这就是我所说的意图: Intent intent = new Intent(context,class); context.startActivity(intent); 我想知道,如果我在一个活动中有一个复选框,例如,我选中该复选框,然后在我转到下一个活动后,但是如果我回到上一个活动,复选框不会像调用意图时那样被选中。 我不知道我是否解释过我自己,但我希望你能给我一个提示来解决这个问题。

我从一个活动中调用一个意图:我想知道当我调用意图时,该活动会发生什么,我的意思是,它被破坏了吗?暂停?顶上

这就是我所说的意图:

Intent intent = new Intent(context,class);
context.startActivity(intent);
我想知道,如果我在一个活动中有一个复选框,例如,我选中该复选框,然后在我转到下一个活动后,但是如果我回到上一个活动,复选框不会像调用意图时那样被选中。

我不知道我是否解释过我自己,但我希望你能给我一个提示来解决这个问题。

intent.putExtra(“,”);在此处保存chackbox状态

默认情况下,活动已停止,而不是销毁。如果系统资源不足,它可能会被破坏

因此,在您的案例中可能发生的情况是,系统资源不足,因此会破坏您的活动。您应该将UI状态保存在
onSaveInstanceState
中,然后在
onRestoreInstanceState
中还原。阅读更多信息。

将复选框的状态放入或静态变量中,一旦返回到该活动,检查其状态并填充它(如果是这种情况)

I mean, is it destroyed? onPause? onStop?
onStop
被调用

来自developer.android.com

onStop() - Called when the activity is no longer visible to the user. 

尝试将复选框的状态保存为静态布尔值,并使用
isChecked()
onRestart()
中检查该布尔值-当您返回到上一个活动时,会调用该选项。

关于保存复选框的状态,前面有很多问题(无论是由于意图还是屏幕旋转)。相同的生成方法适用于:

例如:


要确定正在进行的生命周期调用,可以始终通过调用super类覆盖这些方法,并在调试器中使用断点。在Android生命周期图旁边看到运行中的代码对我总是很有帮助。

是的,一旦你通过intent@MarcinS. @QuinDa刚读了它会对你有帮助不,我不想在下一个活动中有这些信息,如果我回到上一个活动,我想勾选这个复选框。是的,这是我想的解决方案,但是有很多复选框,我不想太在意。还有其他解决方案吗?好吧,在这种情况下,你最好看看这篇文章:我几乎可以肯定的是,人们不能依赖于在活动静态变量中保存状态。目前我找不到正式的参考,但这里有一个很好的总体参考:。根据我目前的经验,我在静态中输入的每个值在整个活动生命周期中都保持不变,直到流程本身被终止。请看这个听起来正确的讨论。在我的例子中,我通常希望在一个活动中保存用户输入(例如复选框的状态),该活动跨越应用程序的使用,可能包括正在销毁的应用程序,因此谨慎的做法是不依赖静态变量(陈述明显的情况)。但在这种情况下,静态变量可能是合适的。谢谢你的评论。