【Android】AlertDialog禁止返回键
1、一般的实现弹出框的代码
AlertDialog.Builder localBuilder = new AlertDialog.Builder(activity);
localBuilder.setMessage(msg);
localBuilder.setTitle("提示");
localBuilder.setPositiveButton("确认", new DialogInterface.OnClickListener() {
public void onClick(
DialogInterface paramAnonymousDialogInterface,
int paramAnonymousInt) {
paramAnonymousDialogInterface.dismiss();
}
});
localBuilder.setNegativeButton("取消",
new DialogInterface.OnClickListener() {
public void onClick(
DialogInterface paramAnonymousDialogInterface, int paramAnonymousInt) {
paramAnonymousDialogInterface.dismiss();
}
});
localBuilder.setCancelable(false);
localBuilder.create().show();

2、代码这样实现的弹出对话框,按返回键或搜索键时,对话框也是会关闭的。
alertDialog.setCancelable(false);
//这句代码设置这个对话框不能被用户按[返回键]而取消掉

3、 //由于设置alertDialog.setCancelable(false);
但是按了KeyEvent.KEYCODE_SEARCH,对话框还是会Dismiss掉。
设置setOnKeyListener
屏蔽KeyEvent.KEYCODE_SEARCH的触法处理。

4、setOnKeyListener()
这个是一个关键的设置。
作用是监听设置控件点击的按钮事件的捕获处理
(作用就是屏蔽用户按下KeyEvent.KEYCODE_SEARCH)

5、alertDialog.setCancelable(false);
然后设置setOnKeyListener()(自己重写按钮触法监听)

6、就这样 再怎么点击返回键,都消失不了了
代码是自己总结的,方法人人都说过,但是这个我自己总结写的。
个人觉得很无语。
