这个问题已经在这里有了答案:




9年前关闭。






我正在寻找从历史记录堆栈中删除StartActivity的解决方案。
StartActivity是一开始就启动的 Activity 。我正在使用此类检查一些用户值,并希望在所有正确的情况下将用户重定向到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);

最佳答案

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

如果在AndroidManifest.xml中将noHistory属性设置为true,则可能会达到相同的效果。

关于android - 从历史记录中删除 "start"-activity,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5790973/

10-12 06:26