Mar*_*hov 4 java android android-edittext saripaar
我使用android-saripaar库.
我可以使用查看EditText输入数据正确性的所有字段validate().如果我EditText在正确的数据中填写错误,只要我再次调用a,错误就不会消失validate().
如何仅在确定输入文本后检查有效性EditText并从中删除错误?
谢谢.
您可以将Saripaar Mode.IMMEDIATE与TextWatcher实例结合使用来实现您的目标.
@Order每个具有Saripaar注释的视图字段中使用注释.这是使用立即验证模式所必需的.如果要按特定顺序验证规则,则每个saripaar注释都有一个sequence属性.该sequence属性是可选的,但如果您希望以特定顺序验证规则,则非常有用.
@Order(1)
@NotEmpty(sequence = 1)
@Email(seqence = 2)
private EditText mEmailEditText;
@Order(2)
@Password
private EditText mPasswordEditText;
将模式设置为立即 mValidator.setMode(Mode.IMMEDIATE)
TextWatcher为您的小部件添加适当的侦听器.
TextWatcher validationTextWatcher = new TextWatcher() {
@Override
void afterTextChanged(Editable s) {
mValidator.validate();
}
// Other methods to override ...
}
mEmailEditText.addTextChangedListener(validationTextWatcher);
mPasswordEditText.addTextChangedListener(validationTextWatcher);
ViewValidatedAction实现,它会在EditText字段有效时自动清除字段上的错误.如果表单使用备用错误显示机制/窗口小部件,则可以通过指定自己的ViewValidatedAction实例来清除它们.
mValidator.setViewValidatedAction(new ViewValidatedAction() {
@Override
void onAllRulesPassed(View view) {
// ... clear errors based on the view type
}
});
披露:我是Saripaar的作者
| 归档时间: |
|
| 查看次数: |
1366 次 |
| 最近记录: |