有用于用户输入验证的iOS US2FormValidator库(请参见下图)。我认为这个库比默认情况下更好,当某些东西没有被验证时,它会弹出警告。Android表单验证UI库
我在寻找如何做到在Android这样的事情。是否有一些Android的类似物US2FormValidator?
有用于用户输入验证的iOS US2FormValidator库(请参见下图)。我认为这个库比默认情况下更好,当某些东西没有被验证时,它会弹出警告。Android表单验证UI库
我在寻找如何做到在Android这样的事情。是否有一些Android的类似物US2FormValidator?
你有你的屏幕截图显示可以使用实现弹出效果Android的内置上EditText
部件setError(String)
方法。
另外,您可以使用我创作的Android Saripaar库来利用注释的强大功能。
第一添加库:
compile 'com.mobsandgeeks:android-saripaar:2.0.2'
该库是非常简单易用。在您的活动中注释了您想要验证的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()
。
您将收到onSuccess
和onFailure
方法ValidationListener
的回调。
如果你想显示弹出作为显示图像上面然后进行以下操作,
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());
}
}
希望有所帮助。
Android有非常易于使用的内置验证机制,它足够好。请参阅以下链接: http://blog.donnfelker.com/2011/11/23/android-validation-with-edittext/
链接被破坏,这是(2015/07/14): http://www.donnfelker.com/android-validation-with-edittext/ – jdev 2015-07-14 17:18:10
为Android完全实现三个步骤中验证。开发人员应该专注于他们令人敬畏的代码,并让图书馆做模板。
三种类型的验证类型:
我给你举例UNDERLABEL验证。
步骤为实现Android的验证:
申报验证方式:
AwesomeValidation mAwesomeValidation = new AwesomeValidation(UNDERLABEL);
mAwesomeValidation.setContext(this);
添加验证;
mAwesomeValidation.addValidation(activity, R.id.edt_name, “[a-zA-Z\\s]+”, R.string.err_name);
mAwesomeValidation.addValidation(activity, R.id.edt_tel, RegexTemplate.TELEPHONE, R.string.err_tel);
设置何时触发验证。
findViewById(R.id.btn_done).setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
mAwesomeValidation.validate();
);
那一切,这里是full source code
。
那么你为什么认为它回答了他的问题?他要求提供具体的验证错误消息的展现方法。 – 2015-03-28 11:33:15
你能告诉我如何确认密码字段时如何使用这个Awesome Validation Library。 – 2015-06-27 06:57:19
@SriyankSiddhartha验证确认字段,你只需要做'mAwesomeValidation.addValidation(活动,R.id.edt_password_confirmation,R.id.edt_password,R.string.err_password_confirmation);'请检查github回购页面的详细信息。 – 2016-12-06 07:54:23
Android Saripaar绝对是最好的选择! :D – 2013-12-24 04:29:30
手机号码验证如何? – 2013-12-30 11:20:00
@RegEx注解 - 使用正则表达式,电话号码没有标准格式。 – 2013-12-30 12:34:42