这篇文章主要给大家介绍了如何通过一行代码搞定UITextField的输入格式限制的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
ZASTextFieldFormat开发背景
在开发的过程中,每次写到UITextField,就不由得心里不爽,因为要考虑到各种输入限制,实现代理、通知等一些麻烦繁琐的东西,就心中不爽,所以才写了这个ZASTextFieldFormat (本地下载)简单的轮子,先暂时用着,等后期在慢慢优化完善。
ZASTextFieldFormat 简介
一行代码,设置UITextField的输入格式限制,比如手机号、身份证号、银行卡号格式以及输入字符类型个数的限制等;
接口说明
/**
* ZASTextFieldFormatDelegate代理
*
*/
@property (nonatomic, assign) id<ZASTextFieldFormatDelegate> zasDelegate;
/**
* 设置浮点类型,只允许输入两位小数的浮点类型(default=NO)
*
*/
@property (nonatomic, assign) Boolean isFloat;
/**
* 设置正则匹配模式(如果设置正则模式,则忽略其他格式限制)
*
*/
@property (nonatomic, copy) NSString * pattern;
/**
* 设置UITextFiled格式控制的入口 (注:这个入口必须被调用)
* format=nil或者""则不限制格式, charactersInString=nil或者""则不限制字符, maxLimit=0则不限制个数
*
* 示例: 以手机号为例
* @param format 格式,eg: ### #### ####
* @param charactersInString 支持输入的字符,eg: 0123456789
* @param maxLimit 最大输入限制个数,eg: 11
* 结果输入:159 1234 5678
*/
- (void)textFieldWithFormat:(NSString *)format charactersInString:(NSString *)charactersInString maxLimit:(NSInteger)maxLimit;
具体使用
使原有UITextField继承自ZASTextFieldFormat,然后调用如何接口即可;
[_tfPhone textFieldWithFormat:@"### #### ####" charactersInString:@"0123456789" maxLimit:11];
参考Demo
点击此处获取Demo(本地下载)
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对编程学习网的支持。
本文标题为:通过一行代码搞定UITextField的输入格式限制
- Flutter实现底部和顶部导航栏 2022-08-31
- 作为iOS开发,这道面试题你能答出来,说明你基础很OK! 2023-09-14
- Android实现监听音量的变化 2023-03-30
- SurfaceView播放视频发送弹幕并实现滚动歌词 2023-01-02
- iOS 对当前webView进行截屏的方法 2023-03-01
- Android实现轮询的三种方式 2023-02-17
- 详解flutter engine 那些没被释放的东西 2022-12-04
- Android studio实现动态背景页面 2023-05-23
- Android MaterialButton使用实例详解(告别shape、selector) 2023-06-16
- 最好用的ios数据恢复软件:PhoneRescue for Mac 2023-09-14
