按下后退按钮时如何退出应用程序?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (87)

这是一个小问题,但我发现很难解决这个问题。我有多个活动。例如AB和C.当app启动时A打开,点击按钮会将我重定向到活动B,然后从B点击另一个按钮将我带到C. On Back将现在带我回到B和再次按下后退按钮将带我到A这是主要的活动。

现在,如果我按下后退按钮,应用程序应该退出...它会在B和A之间创建循环并且永远不会退出应用程序。

我已经使用了以下方法

方法1:使用 this.finishonBackPressed没有帮助

方法2:android:nohistory = true在清单中使用

但如果我这样做,那么从C活动它将直接带我到A我不想要的。

方法2.使用

      Intent intent = new Intent(Intent.ACTION_MAIN);
        //to clear all old opened activities 
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
        finish();

当我使用它时,每次这在我的设备中打开

请任何人帮忙。

这是我现在的Mainactivity代码

 @Override
    public void onBackPressed() {
           finish();
            super.onBackPressed();
        }

但它也不起作用,它在A和B活动之间创建循环。

提问于
用户回答回答于

你的代码(在MainActivity)不正确,把完成()super.onBackPressed()

一定是 :

@Override
public void onBackPressed() {
    super.onBackPressed();
    finishAffinity(); // or finish();
}

扫码关注云+社区

领取腾讯云代金券