Android中多界面的退出

本文转自:http://blog.csdn.net/liu_zhen_wei/article/details/6988820

Android开发中,有时会遇到需要多界面同时退出的情况,或者,在最后一个界面退出程序,于是网上搜索解答,这位同学的解答是有效地,遂搬上来,感谢帮助。

finish()只能结束当前界面,执行后会显示上一界面。

对于有多个界面的应用程序,如何退出?

下面是摘自csdn论坛的一段代码,如下:

 

int sdk_Version = android.os.Build.VERSION.SDK_INT;
      if (sdk_Version >= 8) {
       Intent startMain = new Intent(Intent.ACTION_MAIN);
       startMain.addCategory(Intent.CATEGORY_HOME);
       startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
       startActivity(startMain);
       System.exit(0);
      } else if (sdk_Version < 8) {
       ActivityManager activityMgr = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
       activityMgr.restartPackage(getPackageName());
      }

public void ConfirmExit() {// 退出确认
AlertDialog.Builder ad = new AlertDialog.Builder(this);
ad.setTitle("退出");
ad.setMessage("是否退出软件?");
ad.setPositiveButton("是", new DialogInterface.OnClickListener() {// 退出按钮
@Override
public void onClick(DialogInterface dialog, int i) {

int sdk_Version = android.os.Build.VERSION.SDK_INT;   
if (sdk_Version >= 8) {   
Intent startMain = new Intent(Intent.ACTION_MAIN);   
startMain.addCategory(Intent.CATEGORY_HOME);   
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);   
startActivity(startMain);   
System.exit(0);   
} else if (sdk_Version < 8) {   
ActivityManager activityMgr = (ActivityManager) getSystemService(ACTIVITY_SERVICE);   
activityMgr.restartPackage(getPackageName());   
}
}
});
ad.setNegativeButton("否", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int i) {
// 不退出不用执行任何操作
}
});
ad.show();// 显示对话框
}


你可能感兴趣的:(Android中多界面的退出)