在一些情况下,android开发人员需要用到有输入框的Dialog来进行条件判断,并根据输入数据的正确性对Dialog进行取消或不取消的操作。此种情况可以以一下方法实现:
dialog.setPositiveButton("确定",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//TODO
}
}
在上面代码中的相应位置写入以下代码,
try {
Field field = dialog.getClass().getSuperclass().getDeclaredField("mShowing");field.setAccessible(true);
//dialog会取消
field.set(dialog, true);
//dialog不会取消
// field.set(dialog, false);
e.printStackTrace();
}