如何在android中完成特定的活动

时间:2015-03-25 09:33:51

标签: android android-intent

我知道你可能会认为这个问题已经被问了很多,但是我一直在研究不同的案例,他们只是想在注销时关闭所有活动。这是我的情景:

1)用Splash Screen启动应用程序然后我用完了() //我将此活动设置为MAIN,因此它首先打开 - 这就是为什么我不能setFlags(FLAG_ACTIVITY_CLEAR_TOP),因为它基本上会回到MAIN

2)介绍寻呼机(4个滑动页面),带有登录和注册按钮

3)登录和注册按钮指导您进行相应的活动 //我没有在介绍页面中使用完成,因为我希望用户能够返回介绍,例如,如果错误地按下注册

4)执行登录/注册后,用户将被定向到主页(这里我用完了终止登录/注册活动,因为我不再需要它们了)

所以以前的所有活动现在都已完成,除了介绍寻呼机,当用户按下应用程序将完成主页并返回介绍,但我不想要那样!我只是希望应用程序退出,我不希望介绍寻呼机在后台运行。如何在主页中调用onCreate方法时完成介绍寻呼机?

我有另一个相关的问题我不想发布另一个帖子:如何获得之前的活动?就像我不想使用操作栏进行导航一样,我创建了一个按钮(< - Back),当我按下它时我想带上之前的活动,我如何获得之前的活动?

2 个答案:

答案 0 :(得分:3)

首先,使您的IntroductionActivity在清单中成为一个单一的基准:launchMode = "singleInstance"

有很多方法可以做到这一点,我想最快的是使用引用该活动的静态字段。在IntroductionActivity中添加:

public static Activity mActivity;

onCreate(){
  this.mActivity = this;
}

然后当您到达主页时,您可以执行此操作:

onCreate(){
  IntroductionActivity.mActivity.finish();
}

答案 1 :(得分:0)

使用finish();在你开始下一个活动之后

示例:

Intent itr=new Intent("com.example.splash.Second");
startActivity(itr);
finish();