在onActivityResult问题中的活动状态

时间:2011-02-20 18:27:39

标签: android android-activity

我对onActivityResult中的Activity状态有疑问。具体来说,是否“保证”onAestoreInstanceState或onCreate在onActivityResult之前调用了一个Activity?换句话说,假设在onActivityResult中(假设您已正确处理onRestoreInstanceState和/或onCreate),可以安全地假设Activity的状态数据(成员变量等)是“可用的”?

2 个答案:

答案 0 :(得分:18)

在我的应用中,我得到以下工作流程:

onCreate
onStart
onRestoreInstanceState
onActivityResult
onResume

所以,在onActivityResult之后调用是onRestoreInstanceState,所以你可以指望状态已经完全恢复(除非你在onResume中做了事。)

如果你的Activity在后台没有被操作系统杀死,那么我认为它的状态是相同的,所以你没什么可担心的。 :)

答案 1 :(得分:-1)

使用startActivityForResult启动另一个活动的活动是完全活动的,只是它失去了焦点 - 即它没有接收到触摸输入。如果您使用此方法启动透明活动,您可以看到第一个活动仍然在后台执行其动画等。