Back Stack中只有一个活动

时间:2013-04-03 17:26:38

标签: android android-activity back-stack

我有5项活动:A,B,C,D和E.

我可以从他们每个人开始所有活动,但我希望Back Stack只保存最后一个活动。

例如:A-> B-> C-> D。如果我在D,我可以回到C,但现在,在C中,当我按下按钮时我想只能进入主要活动(A)。

它可以吗? 谢谢!

2 个答案:

答案 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;
    }