java - 如何重新检查 android-saripaar 中的字段?

标签 java android android-edittext saripaar

我使用 android-saripaar图书馆。

我可以使用 validate() 检查所有 EditText 字段中输入数据的正确性。如果我用错误的正确数据填充 EditText,只要我再次调用 validate(),错误就不会消失。

如何在特定的 EditText 中输入文本后检查有效性并从中删除错误?

谢谢。

最佳答案

您可以将 Saripaar 的 Mode.IMMEDIATETextWatcher 实例结合使用来完成您正在寻找的内容。

  1. 在每个具有 Saripaar 注释的 View 字段中使用 @Order 注释。这是使用立即验证模式所必需的。如果您想按特定顺序验证规则,每个 saripaar 注释都有一个 sequence 属性。 sequence 属性是可选的,但如果您希望以特定顺序验证规则,则非常有用。
    @Order(1)
    @NotEmpty(sequence = 1)
    @Email(seqence = 2)
    private EditText mEmailEditText;

    @Order(2)
    @Password
    private EditText mPasswordEditText;
  1. 将模式设置为立即 mValidator.setMode(Mode.IMMEDIATE)

  2. 为您的小部件添加 TextWatcher/适当的监听器。

    TextWatcher validationTextWatcher = new TextWatcher() {

        @Override
        void afterTextChanged(Editable s) {
            mValidator.validate();
        }

        // Other methods to override ...
    }

    mEmailEditText.addTextChangedListener(validationTextWatcher);
    mPasswordEditText.addTextChangedListener(validationTextWatcher);
  1. (可选)有一个默认的 ViewValidatedAction 实现,它会在有效时自动清除 EditText 字段上的错误。如果您的表单使用备用错误显示机制/小部件,您可以通过指定您自己的 ViewValidatedAction 实例来清除它们。
    mValidator.setViewValidatedAction(new ViewValidatedAction() {

        @Override
        void onAllRulesPassed(View view) {
            // ... clear errors based on the view type
        }
    });

披露:我是 Saripaar 的作者

关于java - 如何重新检查 android-saripaar 中的字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30588122/

相关文章:

java - 使用 Maven 从 pom.xml 构建项目后,我如何使用它的资源

java - Spliterator并行排序顺序

java - 如何处理RecyclerView中的点击事件

java - UUID 返回空指针异常

java - jsp 未以正确格式传递 UTF-8 数据

android - 缺少 logcat 消息

android - 为什么当我对 ImageView 应用填充时,图像被压缩了?

java - Android 仅使用 API 20 : Android 4. 4 (KitKat Wear) 进行编译

Android EditText - 仅输入数字

android - 想要保护编辑文本不被更改