从历史中删除“开始” – 活动

可能重复:
从历史堆栈中删除一个活动

我正在寻找一个解决scheme,从历史堆栈中删除StartActivity。 StartActivity是一开始就开始的。 我正在使用这个类来检查一些用户的值,如果所有的都是正确的,我们想把用户redirect到MainActivity。

我试图设置一个标志:

addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 

但是这不是它应该做的。

 App starts -> StartActivity -> MainActivity -> PRESS back -> the app should end 

它确实:

 App starts -> StartActivity -> MainActivity -> PRESS back -> StartActivity 

感谢您的帮助!

编辑:这是我用来启动MainActivity的代码:

 Intent i = new Intent(context, DashBoardActivity.class); i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(i); 

Solutions Collecting From Web of "从历史中删除“开始” – 活动"

启动StartActivity时应使用FLAG_ACTIVITY_NO_HISTORY来实现所描述的行为。

如果您在AndroidManifest.xml中将noHistory属性设置为true ,您也可以实现同样的效果。

在启动MainActivity之后,您可以简单地调用finish() 。

 Intent i = new Intent(context, DashBoardActivity.class); i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(i); finish();