LoonAndroid自动检测输入框 --- Author: rose && lvyerose@163.com_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > LoonAndroid自动检测输入框 --- Author: rose && lvyerose@163.com

LoonAndroid自动检测输入框 --- Author: rose && lvyerose@163.com

 2015/3/6 9:48:16  lvyeRose  程序员俱乐部  我要评论(0)
  • 摘要:LoonAndroid框架,同时给我们提供了一套自动检测输入规则的工具,用起来很是方便,下面介绍一下这个东东的使用方法(注意,该说明是基于项目已经集成了LoonAndroid框架而言,如果您未集成该框架,请先按照相关说明集成该框架而后方能使用):1、Validator验证器类①实例化:Validatorvalidator=newValidator(this);②设置监听回调:validator.setValidationListener(...)其中监听接口为
  • 标签:android 检测

LoonAndroid框架,同时给我们提供了一套自动检测输入规则的工具,用起来很是方便,下面介绍一下这个东东的使用方法(注意,该说明是基于项目已经集成了LoonAndroid框架而言,如果您未集成该框架,请先按照相关说明集成该框架而后方能使用)

1、Validator 验证器类       ①实例化: Validator validator = new Validator(this);      ②设置监听回调:validator.setValidationListener(...)           其中监听接口为:ValidationListener,他有2个需要重写实现的方法:                 onValidationSucceeded()---当改验证器验证成功时回调                 onValidationFailed(View failedView, Rule<?> failedRule)---当该验证器验证失败时回调(失败情况为输入形式不满足当前验证器所指定的规则)       ③启动验证器进行验证---一般写在 确定 按钮里    validator.validate(); 2、验证规则     我们了解了验证器类,下面介绍如何来制定我们自己的验证规则,比如,用户名输入框要求输入几位字符,要求字母+数字构成,密码输入框要求大于6位字符,注册时要求密码二次输入一致,等等这些规则,框架都为我们提供了统一的管理(统一使用注解进行验证规则设定)     ①@Regex()         正则表达式注解,其中参数有:message = "第一个错误了", pattern = "[a-zA-Z0-9_]{6,15}" ,trim = true , order = 1             message为验证提示信息,pattern为正则表达式,trim为是否去除字符串俩头的空格,order为优先提示号,数值越小优先级越高     ②@TextRule()         文本规则,其中参数有:message = "密码长度4到16位" , minLength = 4, trim = true, maxLength = 16 , order = 2     ③@Password()         密码输入规则,其中参数有:message = "密码长度错误", minLength = 6, maxLength = 18 ,order = 1     ④@ConfirmPassword()         确认密码输入规则,其中参数有:message = "两次密码输入不一致", order = 2    注意③和④对应使用 3、验证错误提示说明     我们有了验证规则和验证器,验证器使用我们自定义的验证规则去验证,当验证结果为成功的时候,我们就可以在成功的回调方法onValidationSucceeded()里面进行成功后的逻辑书写了,比如获取输入框的字符串进行登录,注册等     而当我们验证失败后,该如何进行提示呢?比如输入的不符合我们制定的必须要有字母+数字组合的规则,输入的密码2次不一致等,我们该如何通知用户他当前输入的不符合哪条规则呢?下面我们介绍一下另一个回调方法:onValidationFailed(View view, Rule<?> rule);     首先看看他的参数,View view,如果你有一定的功底,那么你可以去查看源码来熟悉,如果没有,那我可以给你讲解一下,其实改View就是当前用户输入不符合制定的规则的那个输入框,即出错的那个输入框,所有我们可以在验证失败的回调中进行如下判断:         if (view instanceof EditText) { ...... }   确定当前错误回调是因为输入框内容不符合规则而产生的     而第二个参数  Rule<?> rule,为一个抽象类,该类中有一个私有成员属性为:String mFailureMessage,且该属性在出错的时候底层进行了赋值,其值为当前出错注解上的message参数的值,所有从这也能了解到,之前注解上的message参数的作用了。而rule类提供了一个方法             public String getFailureMessage() {                     return mFailureMessage;                 }     所以我们可以通过   rule.getFailureMessage() 对错误参数进行提取出来   4、完整使用流程:     ①、定义控件时进行如下注解:            ②实例化验证器,并设置监听(设置监听时的参数为this是因为当前类已经实现了监听接口)            ③点击事件中进行开始验证            ④验证成功,可进行相关逻辑操作            ⑤验证失败            在验证失败方法中可以进行简单的Toast提示,也可以如代码中设置Handler_TextStyle风格,然后对当前view调用setError()方法进行提示   6、最终效果如下图所示(具体美化请自行设置Handler_TextStyle风格)       

 

上一篇: Google 发布的15个 Android 性能优化典范 下一篇: 没有下一篇了!
发表评论
用户名: 匿名