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

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

2015-03-22 15:11 453 查看
在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下载地址:

返回键退出应用弹出对话框
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: