iOS开发 - 圆形验证码(或密码)输入框的封装
2017-08-08 11:39
661 查看
项目中用到了圆形验证码输入框,输入框之间要求有一定的距离,UI图如下:
上面的UI图主要有以下几个要求:
输入框为圆形
输入框之间有适当距离
输入框颜色在输入文本时有变化
刚开始想着用固定的几个 UITextField 实现,但转念一想,用 UITextField 实现有点麻烦(输入框多的话,它们之间的响应事件不太容易控制,需要来回变换),于是开始想其它办法,最后用了以下的思路:
创建一个 UITextField,用 UILabel 显示 UITextField 上输入的数字,需要监听文本的输入,同时对 UILabel 进行一些操作,再用 block 将输入的文本传出来。
封装的圆形输入框主要实现了以下功能:输入框的数量、距离、颜色、大小等都可以自行设定,用起来也很方便,只需以下几行代码即可:
这是 demo 的效果图:
由于代码很容易看懂,另外代码中也写了注释,因此这里不再对项目做过多的陈述,这是 demo地址,需要的话可以拿去借鉴,有什么不足之处希望能留下宝贵意见或建议!
上面的UI图主要有以下几个要求:
输入框为圆形
输入框之间有适当距离
输入框颜色在输入文本时有变化
刚开始想着用固定的几个 UITextField 实现,但转念一想,用 UITextField 实现有点麻烦(输入框多的话,它们之间的响应事件不太容易控制,需要来回变换),于是开始想其它办法,最后用了以下的思路:
创建一个 UITextField,用 UILabel 显示 UITextField 上输入的数字,需要监听文本的输入,同时对 UILabel 进行一些操作,再用 block 将输入的文本传出来。
封装的圆形输入框主要实现了以下功能:输入框的数量、距离、颜色、大小等都可以自行设定,用起来也很方便,只需以下几行代码即可:
NNValidationCodeView *view = [[NNValidationCodeView alloc] initWithFrame:CGRectMake(80, 100, 300, 45) andLabelCount:4 andLabelDistance:10]; [self.view addSubview:view]; view.changedColor = [UIColor yellowColor]; view.codeBlock = ^(NSString *codeString) { NSLog(@"验证码:%@", codeString); };
这是 demo 的效果图:
由于代码很容易看懂,另外代码中也写了注释,因此这里不再对项目做过多的陈述,这是 demo地址,需要的话可以拿去借鉴,有什么不足之处希望能留下宝贵意见或建议!
相关文章推荐
- 自定义 iOS 密码框或验证码输入框,支持多位验证码,4位或6位验证码自己选择。
- 【iOS开发】封装聊天输入框MKInputBar,语音支持iOS & Android平台
- ios开发,用户登录界面,输入用户名之后点击Next后切换到密码输入框,密码输入框输入后点击Return,键盘回收
- 【无限互联】IOS开发之手势密码的实现
- iOS开发中邮箱,电话号码,身份证,密码,昵称正则表达式验证
- iOS开发中音频工具类的封装以及音乐播放器的细节控制
- IOS开发之电子菜单的设计与实现(继承、封装、多态)
- iOS开发中邮箱,电话号码,身份证,密码,昵称正则表达式验证
- iOS开发UI篇—核心动画(UIView封装动画)
- iOS开发中,无账号密码导出ipa
- iOS开发进阶 - 实现类似微信和支付宝的密码输入框(UIKeyInput协议)
- IOS开发之----两种保存用户名和密码实现记住密码库
- ios开发如何封装AFN第三方类库中的http请求
- iOS开发swift自定义AlertController弹出带有输入框后AertView
- iOS开发UI高级—36核心动画(UIView封装动画)
- 【iOS开发-50】利用创建新的类实现代码封装,从而不知不觉实践一个简单的MVC实验,附带个动画
- iOS开发一行代码系列:一行搞定输入框
- 移动端开发ios输入框内阴影去掉的方法
- iOS开发UI篇—核心动画(UIView封装动画)
- 分享一下我封装iOS自定义控件的体会,附上三个好用的控件Demo <时间选择器&多行输入框&日期选择器>