我有4个活动类e.g A, B, C and D
在这里我将从A开始,然后是C,在这个(C)活动的菜单中我给了活动A的链接,所以当我选择菜单时我要去A和A再从A我要从B到这里我要去D然后回到B然后去C.
总的情况是A->C->A->B->D->B->C
现在问题是按下后退按钮就像这样
C->B->D->B->A->C->A exit
但我想这样使用如果活动A中的用户直接关闭应用程序,则不需要返回B然后C但是如果它在B中则不需要返回C Activity.So中的C和D我正在使用android:noHistory="true"
并且它工作正常,但是我不能将这个用于B.因为当从D回到B时,我不能跳过B活动并直接跳转到A.
所以现在堆栈是这样的:
C->B->A->A exit
之后我尝试过:
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
感谢您的考虑。
答案 0 :(得分:-1)
在使用Intent的地方,它将先前的活动存储在堆栈中,因此使用finish方法清除堆栈,例如
Intent intent = new Intent(A.this,b.class);
startActivity();
finish();
答案 1 :(得分:-1)
此代码可以帮助您
Intent intent = new Intent(this, FirstActivity.Class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();