Android Intent 清除顶部不起作用

标签 android android-intent

我想对我的 HomeScreenActivity 发出一个 Intent 并清除堆栈中所有 Activity 的 Activity ,下面是 Intent 代码:

Intent intent = new Intent(activity, HomeScreenActivity.class);
    if (Build.VERSION.SDK_INT >= 11) {
        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
    }
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
    startActivity(intent);
    finish();

堆栈没有被清除,当我按下后退键时,所有之前的 Activity 都会显示,这不是预期的结果。

请帮忙!

提前致谢。

最佳答案

同时使用两个标志:

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);

第一个标志在当前任务( Activity 堆栈)中不可用或重用现有 Activity 时创建新 Activity 。第二个标志清除与请求的 Activity 关联的任务。

关于Android Intent 清除顶部不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25115439/

相关文章:

java - Android蓝牙开发,如何获取UUID?

android - 如何以编程方式接连调用3个电话?

android - 在我的应用程序中禁用多指触摸

android - Android上如何录制OpenCV处理过的AR视频?

android - 安全漏洞访问控制 : Database in sqlite insert

java - Android 应用程序无法播放 GSM 6.10 编码的 wav?

android - Android Marshmallow 中的屏幕方向更改导致应用程序崩溃时的权限对话框

android - 如何获取我用 Intent 选择的目录的路径并将其用作文件路径?

android - 从 Android 应用程序 A,如何在应用程序 B 中打开非主要 Activity ?

android - 通过数据链接打开 MvvmCross 应用程序