关闭应用程序而不是返回上一个活动

str*_*yer 1 android android-layout

我有以下问题:我打开了活动A,从中打开了活动B.然后我想从B打开活动C,这样当按下C活动中的后退按钮时,应该关闭应用程序而不是回到之前的(B)活动.我试图使用这里的想法(http://stackoverflow.com/questions/5794506/android-clear-the-back-stack),但它们不起作用.我知道如何处理意图,我只对后导航问题感兴趣.

5hs*_*sba 6

像这样开始你的活动..

这在活动A中

  int k=1;
            Intent i=new Intent(A.this,B.class);
            startActivityForResult(i,k);
Run Code Online (Sandbox Code Playgroud)

这在活动B中

  int j=1;
            Intent i=new Intent(B.this,C.class);
            startActivityForResult(i,j);
Run Code Online (Sandbox Code Playgroud)

在活动C中覆盖后退按钮

  @Override
 public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
    setResult(RESULT_OK, null);
    finish();
}
 return super.onKeyDown(keyCode, event);
}
Run Code Online (Sandbox Code Playgroud)

并把它放在活动B中

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
       if (requestCode ==1) {
          if (resultCode == RESULT_OK) {

            setResult(RESULT_OK, null);
         finish();

          }
       }
Run Code Online (Sandbox Code Playgroud)

并把它放在活动A中

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
       if (requestCode ==1) {
          if (resultCode == RESULT_OK) {
         finish();

          }
       }
    }
Run Code Online (Sandbox Code Playgroud)