我有5项活动:A,B,C,D和E.
我可以从他们每个人开始所有活动,但我希望Back Stack只保存最后一个活动。
例如:A-> B-> C-> D。如果我在D,我可以回到C,但现在,在C中,当我按下按钮时我想只能进入主要活动(A)。
它可以吗? 谢谢!
答案 0 :(得分:1)
从B转换时 - > C,在Activity B上调用finish()方法。这将阻止B被放置在后栈上。
答案 1 :(得分:0)
您可以在C中清除后堆栈并导航至A.
A到B.B到C. C到D.
返回D到C
在C中你可以使用下面的内容。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
onBackPressed();
}
return super.onKeyDown(keyCode, event);
}
public void onBackPressed() {
Intent myIntent = new Intent(C.this, A.class)
myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);//clear top of stack.
startActivity(myIntent);
finish();
return;
}