前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >仿苹果数字键盘以及判断信用卡有效期的Editext

仿苹果数字键盘以及判断信用卡有效期的Editext

作者头像
非著名程序员
发布2018-02-09 14:39:00
8350
发布2018-02-09 14:39:00
举报
文章被收录于专栏:非著名程序员

这次带来一个小小的信用卡有效期规则的Editext,额外赠送内置数字键盘的开发

首先来看下需求: 1) 月份数字: λ 数字输入0:后一位数字可输入1-9,输入1则展示01/(注意斜杠展示在界面),点击0界面没有反应 λ 数字输入1:后一位数字可输入0、1、2,输入0则展示10/(注意斜杠展示在界面),点击3-9界面没有反应 λ 数字输入2:则展示02/(注意斜杠展示在界面), λ 数字输入3-9,展示逻辑同2 2) 年份数字: λ 数字输入1、2、3,点击其他数字,界面无反应 λ 当输入数字1时: 继续输入数字6(当前年份为16年,2017年时即可输入7),则校验月份是否>=10,如果是,可以输入,如果不是,则不可输入 可继续输入数字7/8/9,0-5不可输入 λ 当输入数字2时:可继续输入数字0-9 λ 当输入数字3时:可继续输入数字0、1;也就是年份最大数字为31年(当前年份+15年,2017年时即可输入32)

不可以输入4-9和0,输入界面无反应

这是DEMO完成时候的预览

用到项目里面也是和ok的啊,

所以我们要写一个自定义的带清除的的Editext但是,还要加入额外的判断逻辑,加入清除按钮简单就一笔带过。

自定义的Editext在构造方法中,获取系统的drawable数组,并且难道我们要设置的图片

调动这个设置drawable区域的API,把自定义的drawable显示

Editext的回调,判断显示icon的时机

由于我们添加的删除图标是一个drawable,所以我们只能重写onTouch模拟点击事件,进行清空editext文本内容的操作

判断手指抬起的时候,在UP中,用手指抬起的坐标和view的宽度-图片的宽度的坐标做个对比,如果大于这个值,说明在图片的点击区域内,那么我们清空,文本内容,其实就是给文本设置 空字符串就行了!

下面我们关键来看下那个监听里面应该如何对于上面的条件进行判断

  • 自定义文本监听
  • 在文本监听的构造中获取,当前的时间限制
  • 解析当前的时间和限制时间,获取月份和年限的限制

在监听里面逐条进行判断

注释已经很详细了,下面源代码连接送上,而且有菜单,里面有一个仿iPhone的自定义数字键盘,可以屏蔽掉系统键盘的哦,赶紧下载试试吧

下载地址:https://github.com/GuoFeilong/CreditKeyboard

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-09-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 非著名程序员 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 不可以输入4-9和0,输入界面无反应
  • 下载地址:https://github.com/GuoFeilong/CreditKeyboard
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档