Android——点击对话框上按钮不关闭对话框

有时候我没可能需要在点击按钮进行一些检测,但是并不想关闭次对话框(系统默认点击任何一个按钮则关闭对话框),处理方法如下:在点击事件下添加如下代码:

 

try  
{  
Field field = dialog.getClass()  
.getSuperclass().getDeclaredField(  
"mShowing");  
field.setAccessible(true);  
// 将mShowing变量设为false,表示对话框已关闭  
field.set(dialog, false);  
dialog.dismiss();  
  
}  
catch (Exception e)  
{  
  
}  


 将上面的代码加到哪个按钮的单击事件代码中,哪个按钮就再也无法关闭对话框了。如果要关闭对话框,只需再将mShowing设为true即可。要注意的是,在一个按钮里设置了mShowing变量,也会影响另一个按钮的关闭对话框功能,因此,需要在每一个按钮的单击事件里都设置mShowing变量的值。

你可能感兴趣的:(Android——点击对话框上按钮不关闭对话框)