您的位置:首页 > 移动开发 > Android开发

Android中多界面的退出

2015-12-29 14:49 531 查看
本文转自: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();// 显示对话框
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: