温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何解决UITextField输入格式限制问题

发布时间:2021-07-23 10:42:29 来源:亿速云 阅读:142 作者:小新 栏目:移动开发

小编给大家分享一下如何解决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];

以上是“如何解决UITextField输入格式限制问题”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI