在我的应用程序中,我有退出按钮退出应用程序。所以我有finish()
所有的活动。但我失去了后退按钮的行为。所以我的问题是:我想回到所有活动,并且还想在退出按钮时退出..
答案 0 :(得分:4)
你的问题有点令人困惑,但我认为你需要这个
Finish all activities when back button is pressed
并且从不使用system.exit退出应用程序Close application and launch home screen on Android
editButton.setOnClickListener(new View.OnCLickListener()
{
public void onClick(View v) {
finish();
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addCategory(Intent.CATEGORY_HOME);
startActivity(intent);
}
});
答案 1 :(得分:0)
System.exit(1)
可能会有所帮助..论证很重要..你也可以尝试this方法..
答案 2 :(得分:0)
您可能希望覆盖onBackPressed()
方法并在其中调用finish()
答案 3 :(得分:0)
使用下面的代码...我希望它能正常工作
ActivityManager am = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> taskInfo = am.getRunningTasks(1);
ComponentName componentInfo = taskInfo.get(0).topActivity;
am.restartPackage(componentInfo.getPackageName());
答案 4 :(得分:0)
/ **我发现和工作的最简单方法。在XML文件中为按钮设置onclick="exitBtn"
。并在java * /
public void exitBtn(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(OderActivity.this); // this will pop up a dialog box for OK or Cancel//
builder.setMessage("Do you want to exit");
builder.setCancelable(true);
builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addCategory(Intent.CATEGORY_HOME);
startActivity(intent);
finish();
}
});
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.cancel();
}
});
AlertDialog alert = builder.create();
alert.show();
}