我想点击我的HomeScreenActivity意图并清除堆栈中存活的所有活动,下面是目标代码:
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();
堆栈未被清除,当我按后退键时,显示所有先前的活动,这不是预期的结果。
请帮忙!
提前致谢。
答案 0 :(得分:6)
同时使用两个标志:
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
当第一个标志在当前任务(活动堆栈)中不可用或重新使用现有任务时,它会创建新活动。第二个标志清除与请求的活动相关的任务。
答案 1 :(得分:0)
使用
Intent.FLAG_ACTIVITY_NO_HISTORY