我正在尝试验证 EditText 字段中的文本输入。我setErrors
在字段中没有输入文本时创建。Submit
按下按钮时验证字段。
如果setError
为空字段抛出 a ,则在该字段中键入文本,当按下 t 或在该字段中按下回车键时setError
将消失- 不是当用户在空字段中键入文本,然后手动点击Submi
另一个领域。setErro
即使已输入文本,第一个字段的r 仍处于活动状态。
我认为EditText
可以在输入文本以解决此问题时进行验证。
这是正确的方法吗?
EditText toText = (EditText) findViewById(R.id.to);
EditText subjectText = (EditText) findViewById(R.id.subject);
if (toText.getText().length() == 0) {
toText.setError("Please enter a valid recipient");
}
else {
toText.setError(null);
}
if (subjectText.getText().length() == 0) {
subjectText.setError("Please enter a subject");
}
else {
subjectText.setError(null);
}
所以我想要实现的目标:
- 用户忘记在 toText 中输入文本
- 用户单击提交,出现 setError 消息
- 用户在 toText 中输入文本
- 用户点击主题文本
- toText 仍然显示 setError
- 我想在这种情况下删除 setError
在以下情况下,toText 将删除 setError:
- 用户再次单击提交以重新验证字段
- 用户按键盘上的 Enter 键前进到下一个字段