相关疑难解决方法(0)

Android:清除后台堆栈

在Android中我有一些活动,比方说A,B,C.

在A中,我使用此代码打开B:

Intent intent = new Intent(this, B.class);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

在B中,我使用此代码打开C:

Intent intent = new Intent(this, C.class);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

当用户点击C中的按钮时,我想返回A并清除后栈(关闭B和C).因此,当用户使用后退按钮B和C将不会显示时,我一直在尝试以下内容:

Intent intent = new Intent(this, A.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

但是当我回到活动A时,如果我使用后退按钮,B和C仍然会出现.我怎么能避免这种情况?

stack android clear android-intent android-activity

311
推荐指数
16
解决办法
24万
查看次数

清除较旧SDK上的完整Android活动堆栈(缺少FLAG_ACTIVITY_CLEAR_TASK)

我已经在SO上做了一些阅读和搜索,但找不到清除当前活动堆栈的方法.我的应用程序的上下文是由后台服务/通知启动的活动.

想象一下,我的应用程序允许您组织人员列表.几个小时前,您正在"查看"活动中查看人员X,现在这是您的堆栈顶部.在将来的某个时刻,服务会触发并为人Y弹出一个新的"通知"活动.从那里你可以编辑人Y的详细信息.

当你完成这个活动时,弹出堆栈并最终查看人X将是一个令人困惑的用户体验.理想情况下,我想回到用户正在做的任何事情(电子邮件等...),或者至少我的应用程序的主页.

我尝试启动"通知",FLAG_ACTIVTY_NEW_TASK但似乎没有帮助:当任务完成时,它只是回到上一个任务.我想要的似乎是Android 3的新功能FLAG_ACTIVITY_CLEAR_TASK,这在之前的SDK中并不存在.

有没有人有建议去做到这一点?

android android-intent android-activity back-stack

12
推荐指数
2
解决办法
1万
查看次数

在调用New活动时从Back Stack中删除所有活动

可能重复:
Android:清除后台堆栈

当我调用back_Stack中没有的新Activity时,有没有办法清除back_Stack?(我正在使用Api vesion 8)..请帮助?

android

2
推荐指数
1
解决办法
3916
查看次数