Android 活动不从后堆栈清除,即使是从方法意图。标记\u活动\u清除\u顶部
我想转到其他活动,但在我想清除所有其他活动之前。我知道方法Intent.FLAG_ACTIVITY_CLEAR_TOP,但当我在移动后按后退键时,它不起作用,然后再次显示上一个活动。 我的代码是Android 活动不从后堆栈清除,即使是从方法意图。标记\u活动\u清除\u顶部,android,android-studio,start-activity,Android,Android Studio,Start Activity,我想转到其他活动,但在我想清除所有其他活动之前。我知道方法Intent.FLAG_ACTIVITY_CLEAR_TOP,但当我在移动后按后退键时,它不起作用,然后再次显示上一个活动。 我的代码是 Intent intent = new Intent(LoginActivity.this, WelcomeActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); progr
Intent intent = new Intent(LoginActivity.this, WelcomeActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
progressDialog.dismiss();
感谢您的支持有时它不起作用,您应该在代码中添加这一行
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP |Intent.FLAG_ACTIVITY_NEW_TASK |
Intent.FLAG_ACTIVITY_CLEAR_TASK);
这将帮助你,希望你的问题会得到解决。
我在代码中添加了这一行,添加这一行后,代码将如下所示
Intent intent = new Intent(LoginActivity.this, WelcomeActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP |
Intent.FLAG_ACTIVITY_CLEAR_TASK |
Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
progressDialog.dismiss();
用上述代码替换您的代码。添加三个标志:
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
如果你只有一个TOP,那么CLEAR_TOP only work意味着只有一个活动,所以你还需要添加意图。明确任务和意图。新任务,代码如下所示
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP |
Intent.FLAG_ACTIVITY_CLEAR_TASK |
Intent.FLAG_ACTIVITY_NEW_TASK);
CLEAR_TOP
仅在活动启动模式为singleTop
时有效。