iOS US2FormValidator库用于用户输入验证(见下图),我认为该库比默认的当一些东西没有验证时弹出警报要好。
我正在寻找如何在Android上做这些事情。有一些US2FormValidator的Android类似物吗?
kyks70gy1#
您在屏幕截图中显示的弹出效果可以通过在EditText小部件上使用Android内置的setError(String)方法来实现。此外,您还可以使用我编写的Android Saripaar库来利用注解的强大功能。首先添加库:
EditText
setError(String)
compile 'com.mobsandgeeks:android-saripaar:2.0.2'
该库非常简单易用,在Activity中标注您想要验证的View引用,如下例所示。
View
@Order(1) private EditText fieldEditText; @Order(2) @Checked(message = "You must agree to the terms.") private CheckBox iAgreeCheckBox; @Order(3) @Length(min = 3, message = "Enter atleast 3 characters.") @Pattern(regex = "[A-Za-z]+", message = "Should contain only alphabets") private TextView regexTextView; @Order(4) @Password(min = 6, scheme = Password.Scheme.ALPHA_NUMERIC_MIXED_CASE_SYMBOLS) private EditText passwordEditText; @Order(5) @ConfirmPassword private EditText confirmPasswordEditText;
order属性指定字段必须验证的顺序。在onCreate()方法中示例化一个新的Validator对象,并在任何事件侦听器中调用validator.validate()。您将在ValidationListener的onSuccess和onFailure方法上接收回调。如果您想显示如上图所示的弹出窗口,请执行以下操作:
order
onCreate()
Validator
validator.validate()
ValidationListener
onSuccess
onFailure
public void onValidationFailed(View failedView, Rule<?> failedRule) { if (failedView instanceof Checkable) { Toast.makeText(this, failedRule.getFailureMessage(), Toast.LENGTH_SHORT).show(); } else if (failedView instanceof TextView) { TextView view = (TextView) failedView; view.requestFocus(); view.setError(failedRule.getFailureMessage()); } }
vsmadaxz2#
Android有非常容易使用的内置验证机制,这是足够好的。请参阅以下链接:http://blog.donnfelker.com/2011/11/23/android-validation-with-edittext/
guykilcj3#
我刚刚遇到了ValidationKomensky,您可能会发现它很有用https://github.com/inmite/android-validation-komensky
3条答案
按热度按时间kyks70gy1#
您在屏幕截图中显示的弹出效果可以通过在
EditText
小部件上使用Android内置的setError(String)
方法来实现。此外,您还可以使用我编写的Android Saripaar库来利用注解的强大功能。
首先添加库:
该库非常简单易用,在Activity中标注您想要验证的
View
引用,如下例所示。order
属性指定字段必须验证的顺序。在
onCreate()
方法中示例化一个新的Validator
对象,并在任何事件侦听器中调用validator.validate()
。您将在
ValidationListener
的onSuccess
和onFailure
方法上接收回调。如果您想显示如上图所示的弹出窗口,请执行以下操作:
vsmadaxz2#
Android有非常容易使用的内置验证机制,这是足够好的。请参阅以下链接:http://blog.donnfelker.com/2011/11/23/android-validation-with-edittext/
guykilcj3#
我刚刚遇到了ValidationKomensky,您可能会发现它很有用
https://github.com/inmite/android-validation-komensky