android 中怎么实现点击了对话框的按钮以后对话框不会消失

在android中当你点击了对话框的按钮以后 不管你是否调用了dismis()函数 系统本省都会去调用这个函数并且关闭对话框,但是在有些程序中我们必须让对话框保持不消失,如何实现这样的功能呢,这就需要一中 欺骗的机制也就是说 当我们点击了按钮以后 让系统以为对话框已经关闭了,这样他就不会再关闭了,具体实现的代码如下:

  Dialog dialog=new AlertDialog(this)

.setTitle("对话框不消失测试")

.setMessage("test for dialog")

.setPostiveButton("确定",DialogInterface.OnClickListener(){

   try  

           {  

               Field field = dialog.getClass().getSuperclass().getDeclaredField("mShowing");  

               field.setAccessible(true);  

                //设置mShowing值,欺骗android系统   

               field.set(dialog, false);  //需要关闭的时候 将这个参数设置为true 他就会自动关闭了

           }catch(Exception e) {  

               e.printStackTrace();  

         }  

}).create();

dialog.show();

你可能感兴趣的:(android 中怎么实现点击了对话框的按钮以后对话框不会消失)