【Android】AlertDialog禁止返回键

2025-11-01 06:24:52

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();

【Android】AlertDialog禁止返回键

2、代码这样实现的弹出对话框,按返回键或搜索键时,对话框也是会关闭的。

 alertDialog.setCancelable(false);

//这句代码设置这个对话框不能被用户按[返回键]而取消掉

【Android】AlertDialog禁止返回键

3、 //由于设置alertDialog.setCancelable(false);

但是按了KeyEvent.KEYCODE_SEARCH,对话框还是会Dismiss掉。

设置setOnKeyListener

屏蔽KeyEvent.KEYCODE_SEARCH的触法处理。

【Android】AlertDialog禁止返回键

4、setOnKeyListener()

这个是一个关键的设置。

作用是监听设置控件点击的按钮事件的捕获处理

(作用就是屏蔽用户按下KeyEvent.KEYCODE_SEARCH)

【Android】AlertDialog禁止返回键

5、alertDialog.setCancelable(false);

然后设置setOnKeyListener()(自己重写按钮触法监听)

【Android】AlertDialog禁止返回键

6、就这样  再怎么点击返回键,都消失不了了

代码是自己总结的,方法人人都说过,但是这个我自己总结写的。

个人觉得很无语。

【Android】AlertDialog禁止返回键

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢