Android - 恢复活动而不会杀死以前的活动

时间:2016-08-21 11:34:52

标签: android android-activity

我想知道如何在不杀死任何2个活动的情况下切换2个活动,这样我就可以恢复它的状态。 我试过这个:

Activity1.class

    Intent i=new Intent(this,Activity2.class)
    startActivity(i);

Activity2.class

    Intent i=new Intent(this,Activity2.class)
    startActivity(i);

当我按下后退按钮时,此代码只会创建另一个活动并销毁之前的活动。我需要的是如何切换活动,同时暂停之前和恢复到先前暂停的活动,而不会杀死我在的活动。

2 个答案:

答案 0 :(得分:2)

您可以使用FLAG_ACTIVITY_REORDER_TO_FRONT如果您已经拥有活动的实例,它会将其带到前面并调用onResume()
if 是因为如果系统缺乏资源,Android可以随时终止您的后台活动。

Intent i=new Intent(this,Activity2.class)
i.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(i);

同时检查FLAG_ACTIVITY_PREVIOUS_IS_TOP,取决于您的应用逻辑。

答案 1 :(得分:0)

您可以尝试在Intent上设置标志(Intent.FLAG_ACTIVITY_NEW_TASK)。 但你必须记住,当他需要记忆时,系统可能会杀死你的活动。

相关问题