Android按返回键退出应用时弹出对话框

20 篇文章 0 订阅

在Android中,默认情况下按返回键就是退出应用;而要实现按返回键退出应用时弹出对话框就是在onKeyDown事件中添加监听,根据对话框中的选项实现退出与否。

效果图如下:


@Override
	public boolean onKeyDown(int keyCode,KeyEvent event){
		if (keyCode==KeyEvent.KEYCODE_BACK) {
			//back key Constant Value: 4 (0x00000004) 
			//创建退出对话框
			AlertDialog.Builder isExit=new Builder(this);
			//设置对话框标题
			isExit.setTitle("消息提醒");
			//设置对话框消息
			isExit.setMessage("确定要退出吗");
			// 添加选择按钮并注册监听
			 isExit.setPositiveButton("确定",diaListener);
                         isExit.setNegativeButton("取消",diaListener);
			 //对话框显示
			 isExit.show();
		}
		return false;
	}
首先判断按键是否为返回键,然后创建对话框,对按钮注册监听。

然后,监听对话框的点击事件

	DialogInterface.OnClickListener diaListener=new DialogInterface.OnClickListener() {
		
		@Override
		public void onClick(DialogInterface dialog, int buttonId) {
			// TODO Auto-generated method stub
			switch (buttonId) {
			case AlertDialog.BUTTON_POSITIVE:// "确认"按钮退出程序
				finish();
				break;
			case AlertDialog.BUTTON_NEGATIVE:// "确认"按钮退出程序
				//什么都不做
				break;	
			default:
				break;
			}
		}
	};

也可以省去第二部分代码,直接注册并监听事件,将第一段代码稍微修改

<span style="white-space:pre">			</span>isExit.setPositiveButton("确定", new DialogInterface.OnClickListener() {
				
				@Override
				public void onClick(DialogInterface dialog, int which) {
					// TODO Auto-generated method stub
					MainActivity.this.finish();
				}
			});
			 isExit.setNegativeButton("取消", null);

demo下载地址:

返回键退出应用弹出对话框

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值