我已使用Android中的setError
方法在对话框消息中为一组编辑文本添加了输入验证。
但是当我通过将一些编辑文本留空并在对话框上单击"ok"
来测试它时,对话框关闭而不会触发输入值的提示。
有人能看出这个实现有什么问题吗?
我认为这可能与在触发输入验证之前关闭对话框的调用有关。
这就是我根据此问题中的第4个答案Check if EditText is empty.设置输入验证的方式:
else if(TextUtils.isEmpty(strColour)) {
colourText.setError("Please enter a value");
return;
}
}
dialog.cancel();
}
答案 0 :(得分:1)
那是因为你正在调用dialog.cancel()
而不管错误是什么。仅在没有错误时调用此方法。使用布尔值跟踪错误。如果存在错误,则将其设为false,否则保持为true并仅在布尔值为true时调用dialog.cancel()
方法。