Android——点击对话框上button不关闭对话框

时间:2022-03-11 15:41:52

有时候我没可能须要在点击button进行一些检測。可是并不想关闭次对话框(系统默认点击不论什么一个button则关闭对话框),处理方法例如以下:在点击事件下加入例如以下代码:

  1. try
  2. {
  3. Field field = dialog.getClass()
  4. .getSuperclass().getDeclaredField(
  5. "mShowing");
  6. field.setAccessible(true);
  7. // 将mShowing变量设为false。表示对话框已关闭
  8. field.set(dialog, false);
  9. dialog.dismiss();
  10. }
  11. catch (Exception e)
  12. {
  13. }

将上面的代码加到哪个button的单击事件代码中,哪个button就再也无法关闭对话框了。

假设要关闭对话框,仅仅需再将mShowing设为true就可以。要注意的是,在一个button里设置了mShowing变量,也会影响还有一个button的关闭对话框功能,因此,须要在每个button的单击事件里都设置mShowing变量的值。