Android之返回键退出程序

本文详细介绍了在Android应用中如何通过返回键触发确认对话框,实现程序的优雅退出。包括对话框的创建、按钮事件监听及退出逻辑的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android按返回键退出程序,没什么好说的,直接贴代码:

public boolean onKeyDown(int keyCode, KeyEvent event) {
			if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
				// 确认对话框
				final AlertDialog isExit = new AlertDialog.Builder(this).create();
				// 对话框标题
				isExit.setTitle("系统提示");
				// 对话框消息
				isExit.setMessage("确定要退出吗?");
				// 实例化对话框上的按钮点击事件监听
				DialogInterface.OnClickListener listener = new DialogInterface.OnClickListener() {
					public void onClick(DialogInterface dialog, int which) {
						switch (which) {
						case AlertDialog.BUTTON1:// "确认"按钮退出程序
							
							 NotificationManager notificationManager = (NotificationManager) MainActivity.this 
			                    .getSystemService(NOTIFICATION_SERVICE); 
							 	notificationManager.cancel(0); 
							 	String packagename = getPackageName();
								ActivityManager manager = (ActivityManager)getSystemService(ACTIVITY_SERVICE); 
								finish();
								if(getSystemVersion()<8){
									  
									manager.restartPackage(getPackageName()); 
								}else{
									
									manager.killBackgroundProcesses(packagename); 
								}

							break;
						case AlertDialog.BUTTON2:// "取消"第二个按钮取消对话框
							isExit.cancel();
							break;
						default:
							break;
						}
					}
				};
				// 注册监听
				isExit.setButton("确定", listener);
				isExit.setButton2("取消", listener);
				// 显示对话框
				isExit.show();
				return false;
			}
			return false;
		}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值