返回上一个上一个活动

时间:2014-09-24 05:21:37

标签: android android-activity

这是结构的样子:

活动1/2/3 - >活动4 - >活动5

在Act4上,如果布尔变量为真,则直接跳转到Act5。 我的问题是,当我按下Act5时,我想回到名为Act4的活动。但是,它会跳回到Act5。如果我在背压上使用意图,我不知道哪个活动叫做Act4。

在Act4的onCreate中,我有这个代码:

if (boolean) {
    Intent intent = new Intent(context, Act5.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(intent);
    finish();
}

可以在startActivity之前先调用finish吗?

提前致谢。

5 个答案:

答案 0 :(得分:0)

在调用意图从act4调用finish()方法启动act5之前。

答案 1 :(得分:0)

boolean your_variable = true;

if(your_variable)
{
   startActivity(new Intent(Act4.this, Act5.class));

   finish();//now this finish() method will finish Act4 so when you press back on Act5 it will return back to Act3

}

答案 2 :(得分:0)

我的建议是使用startActivityForResult()代替startActivity(intent),当您从activity5结束时,您可以设置一些标记并在到达onActivityResult()时进行管理

如果您想根据旗帜完成活动4,请在finish()

中执行onActivityResult()

答案 3 :(得分:0)

你可以把你的Act4类的onCreate方法放在

if (yourBooleanValue) {
    finish();
    startActivity(yourIntent);
}

或者,如果你在第3个活动中拥有那个布尔值会更好。

答案 4 :(得分:0)

您可以通过putExtra通过活动1/2/3传递一些值进行管理,而根据活动5,您可以根据这些值返回活动。