如何在我按返回时关闭应用程序?

how to close app when i press back?

我正在安装我的应用程序,然后使用 Main Activity 保存数据并转到另一个 Fragment activity.Next 启动我的应用程序时总是预览第二个 Fragment 然后我按返回键转到 Main Activity 但我不想去 Main Activity.I 想按返回​​按钮关闭我的 App.I 试试这个

@Override
public void onResume() {
    super.onResume();

    getView().setFocusableInTouchMode(true);
    getView().requestFocus();
    getView().setOnKeyListener(new View.OnKeyListener() {
        @Override
        public boolean onKey(View v, int keyCode, KeyEvent event) {
            if (event.getAction() == KeyEvent.ACTION_UP && keyCode == KeyEvent.KEYCODE_BACK) {
                // handle back button's click listener
                Toast.makeText(getActivity(), "Back press", Toast.LENGTH_SHORT).show();
                return true;
            }
            return false;
        }
    });

}

--close/exit 应用的最简单方法:

@Override
    public void onBackPressed() {
        Intent intent = new Intent(Intent.ACTION_MAIN);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        intent.addCategory(Intent.CATEGORY_HOME);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(intent);
        finish();
    }

试试这个:

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

在你的 onBackPress 方法中尝试这样的方法

@Override
    public void onBackPressed() {
        Intent intent = new Intent(Intent.ACTION_MAIN);
        //to clear all old opened activities 
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
        finish();
    }

我相信这个话题可以帮到你:Android: Quit application when press back button

假设你的MainActivity是B,Fragmentactivity是A。那么,你必须清空activity栈,只留下A在栈上。使用这个:

Intent launchNextActivity;
launchNextActivity = new Intent(B.class, A.class);
launchNextActivity.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
launchNextActivity.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);                  
launchNextActivity.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
startActivity(launchNextActivity);

在您的 Mainactivity 中,在开始第二个 activity 的行 startActivity() 之后添加此行 this.finish();

在您的主程序中覆盖 onBackPressed 方法 activity

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