@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
//判断是否按下返回键,event.getRepeatCount() == 0为防止点击的过快
if(keyCode==KeyEvent.KEYCODE_BACK&&event.getRepeatCount()==0){
dialog();
}
return true;
}
/**
* 提示框,提示确定或者取消,关闭程序
*/
public void dialog() {
//实例化一个提示消息框
AlertDialog.Builder builder=new Builder(MainActivity.this);
//设置消息框的内容
builder.setMessage("确定退出程序");
//设置消息框的标题
builder.setTitle("提示");
//为消息框添加一个确定按钮,并为其添加监听事件
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//隐藏对话框,可以使用hide,但是dismiss会释放消息框所占用的资源,hide不会,关闭前调用dismiss
dialog.dismiss();
//实现程序重启
Process.killProcess(Process.myPid());
}
});
//为消息框添加取消按钮,并为取消按钮添加监听事件
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//隐藏对话框
dialog.dismiss();
}
});
//创建消息框,并显示
builder.create().show();
}
转载于:https://www.cnblogs.com/danmao/p/3887492.html