码迷,mamicode.com
首页 > 移动开发 > 详细

Android Validation

时间:2015-07-31 10:43:32      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:androidvalidation   登录ui   

什么是Android Validation:

      一个简单的函数库,使用注释语法来验证用户输入的表单信息。你仅需编写几行代码就可以实现一些表单验证功能,且显示的所有视图都将反馈给用户。它还带有一个可扩展的在线验证选项,这样你就可以为定制视图编写自己的验证信息及适配器了。


基本功能简介:【框架系统自带】

Required (必填)                 NotBlank (非空数据)              Digits (仅数字)                              Email (电子邮件)        

2选一必填项验证               重复密码验证                           HTTPURL (Http URL)                 手机号码格式验证等


 基本用法:【后续用简单列子讲解,只需要四行代码简单验证】
1.先创建个表单Form类用来装控件
2.然后创建Validate类,将被验证EditText控件传入
3.将这个Validate类addValidator加入非空类型NotEmptyVerifior
4.Form表单addValidates这个Validate类即可
5.最后调用form.validate()验证即可,返回true表示验证通过。 


效果图:
技术分享          技术分享     技术分享



使用的地方:需要用表单的地方,且需要规定表单的相关格式
优势:只要你会正则表达式,可以极易扩展你自己的校验器。该框架的极大优势也在于其扩展性!
实例讲解:【如上图,账号1用的系统自带的号码校验器,帐号2用的自定义的校验器】
                Form form = new Form();
		Validate phonevalidate = new Validate(zhanghao1);
		PhoneValidator phoneRex = new PhoneValidator(this);
		
		
		Validate emailValidate = new Validate(zhanghao2);
		MyEmailValidator emailvalidator = new MyEmailValidator(this);
		emailvalidator.setDomainName("gmail.com");// 可写可不写
		
		
		phonevalidate.addValidator(phoneRex);
		emailValidate.addValidator(emailvalidator);
		
		
		form.addValidates(emailValidate);
		form.addValidates(phonevalidate);</span>

最后在校验的时候使用:boolean is = form.validate();    【一个校验器就是这么简单的四步骤即可】



源码分析:form.validate()方法
         /**
	 * Called to validate our form.
         * If an error is found, it will be displayed in the corresponding field.
	 * @return
	 * 		boolean :   true if the form is valid
         *                  false if the form is invalid
	 */
	public boolean validate(){
		boolean result = true;
		Iterator<AbstractValidate> it = this._validates.iterator();
		while(it.hasNext()){
			AbstractValidate validator = it.next();
			TextView field = validator.getSource();
			field.setError(null);
			if(!validator.isValid(field.getText().toString())){
				result = false;
				field.setError(validator.getMessages());
			}
		}
		return result;
	}

遍历所有的校验器,看是否校验通过,不通过给提示。【可修改源码,对提示给予修改,展示更加友好效果】

项目源代码地址:http://download.csdn.net/detail/itjavawfc/8948019




版权声明:本文为博主原创文章,未经博主允许不得转载。

Android Validation

标签:androidvalidation   登录ui   

原文地址:http://blog.csdn.net/itjavawfc/article/details/47160833

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!