如何在一键式点击中关闭两个活动?

时间:2015-02-03 13:14:09

标签: java android android-intent

有3项活动A,B,C。

A有onCreate有很多动画(仅适用于启动)和onRestart有一个动画(每次重启时)。

B对C有onClick按钮。

C有"转到A"按钮。 (按钮单击 - >活动C - >活动A)

我这样做了:

public void gotoA (View view)
{
    Intent intent = new Intent(this, MainActivity.class);
    startActivity(intent);
}

然后再次创建,启动动画显示出来。

如何一次关闭(或杀死)两项活动?

我也尝试intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);,但它没有用。

3 个答案:

答案 0 :(得分:1)

我不确定你想要杀死两个活动你想要什么,而且你没有发布任何代码,所以我只能告诉你尝试添加

 finish(); 

之后

 startActivity(intent);

应关闭你的活动

答案 1 :(得分:1)

startActivityForResult来自Activity A-> B和B-> C,然后将result_code设置为C中的特定内容。然后在B中的onActivityResult中检查该result_code并调用finish。

您应该尽量避免使用FLAG_ACTIVITY_CLEAR_TOP,因为它无法正常完成您的活动,只需将其从视图中删除即可。

答案 2 :(得分:1)

我猜你想在开始第三个活动时完成前两个活动。为实现此目的,您可以使用以下设置:

  • 从第一个Activity启动第二个Activity时,请使用startActivityForResult
  • 从第二个Activity启动第三个Activity时,设置一个您选择发送给第一个Activity的结果代码,以表示它自己完成
  • 现在完成第二个活动
  • 现在,您将从第一个Activity的onActivityResult()方法的第二个Activity中收到终止结果代码。在此处调用finish()以完成第一个Activity