我想对我的 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/