如果我点击对话框的旁边,我有一个可取消的对话框。但在关闭对话框之前,我想检查一个字段,如果检查结果是否定的,那么对话框不应该关闭。我想,如果我覆盖onDismiss()方法,我可以这样做,但它不起作用。
如果对话框应关闭或保持打开状态,我必须覆盖哪个方法来进行检查并确定? 感谢您的帮助:)
答案 0 :(得分:0)
要在单击按钮时保持对话框打开,必须覆盖DialogInterface.OnShowListener。
检查答案Here
您可以使用AlertDialog.BUTTON_NEGATIVE获取否定按钮,然后自己覆盖onClickListener以防止对话框被解雇。
答案 1 :(得分:0)
不确定这是最佳解决方案,但您应该能够覆盖cancel
方法并在验证时调用super。
@Override
public void cancel() {
if (YOUR_LOGIC) {
super.cancel();
}
// do nothing
}