如何在我按返回时关闭应用程序?
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();
结束();
}
我正在安装我的应用程序,然后使用 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(); 结束(); }