在Android中,我有一些活动,假设它们是A,B,C。
在A中,我使用以下代码打开B:
Intent intent = new Intent(this, B.class);
startActivity(intent);
在B中,我使用以下代码来打开C:Intent intent = new Intent(this, C.class);
startActivity(intent);
当用户在C中点击按钮时,我希望返回A并清除后退栈(关闭B和C)。因此,当用户使用后退按钮时,B和C将不会出现。我一直在尝试以下操作:
Intent intent = new Intent(this, A.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
但是当我回到活动A时,如果我使用后退按钮,B和C仍然会出现。我该如何避免这种情况?
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_NEW_TASK);
这段代码的意思是给一个Intent对象添加标志,其中包括清除任务栈顶部的Activity并创建新的任务。 - dzeikei