- 浏览: 265533 次
- 性别:
- 来自: 大连
文章分类
最新评论
1. 如何实现对UITextField ,UITextView等输入框的 字数限制
(1)首先,肯定要 让controller 实现 UITextFieldDelegate (针对UITextField)或者 UITextViewDelegate(针对UITextView)
然后,将 输入框的delegate属性设置为self.
(2) 然后,我们就可以用这两个delegate的函数来实现 我们对输入字数的限制了。
对于 UITextField 是函数
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;
或者
对于UITextView 是函数
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text;
如果允许继续输入,那么返回YES,否则返回NO。
代码如下:
2. 如何实现 对有输入限制的输入框的剩余字数的自动计算
比如上面的代码中,输入框的字数不能超过100,如何实时的计算出当前可以输入多少个字符呢?
UITextField 没有找到合适的函数,也可以在函数
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;
中来实现。
代码:
UITextView 除了可以在函数
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
中按照上面类似的办法处理以外,还可以在函数
- (void)textViewDidChange:(UITextView *)textView 中处理。
代码如下:
转至:http://www.devdiv.com/home.php?mod=space&uid=21083&do=blog&id=4122
(1)首先,肯定要 让controller 实现 UITextFieldDelegate (针对UITextField)或者 UITextViewDelegate(针对UITextView)
然后,将 输入框的delegate属性设置为self.
(2) 然后,我们就可以用这两个delegate的函数来实现 我们对输入字数的限制了。
对于 UITextField 是函数
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;
或者
对于UITextView 是函数
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text;
如果允许继续输入,那么返回YES,否则返回NO。
代码如下:
//如果输入超过规定的字数100,就不再让输入 - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { if (range.location>=100) { return NO; } else { return YES; } }
2. 如何实现 对有输入限制的输入框的剩余字数的自动计算
比如上面的代码中,输入框的字数不能超过100,如何实时的计算出当前可以输入多少个字符呢?
UITextField 没有找到合适的函数,也可以在函数
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;
中来实现。
代码:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { int remainTextNum_=100; //计算剩下多少文字可以输入 if(range.location>=100) { remainTextNum_=0; return NO; } else { NSString * nsTextContent=string.text; int existTextNum=[nsTextContent length]; remainTextNum_=100-existTextNum; return YES; } }
UITextView 除了可以在函数
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
中按照上面类似的办法处理以外,还可以在函数
- (void)textViewDidChange:(UITextView *)textView 中处理。
代码如下:
//在这个地方计算输入的字数 - (void)textViewDidChange:(UITextView *)textView { NSString * nsTextContent=textView.text; int existTextNum=[nsTextContent length]; remainTextNum_=100-existTextNum; }
转至:http://www.devdiv.com/home.php?mod=space&uid=21083&do=blog&id=4122
发表评论
-
发送短信,发邮件,打电话代码实现
2012-03-12 12:11 2349基础代码: + (void)alert:(NSSt ... -
iphone"此证书是由未知颁发机构签名的"的解决办法
2012-01-10 20:46 13740由于误删除,将开发证书给弄没了,导致Certificates中 ... -
Xcode4 常用快捷键
2011-12-21 20:14 985基础篇 command + arr ... -
NSOperationQueue用法
2011-12-14 17:03 1347operationQueue = [[NSOper ... -
Delegate与Notification区别
2011-12-09 17:54 1495Delegate: 消息的发送者(sender)告知接收者(r ... -
切分字符串转数组
2011-12-05 14:46 1104使用-componentsSeparatedByString: ... -
线程循环
2011-12-02 20:06 902@selector(xxxThread)方法以后,在方法中添加 ... -
使用及关闭线程
2011-12-02 20:00 1077-(void)startRtsp{ // ... -
判断touch在一个View上
2011-12-02 19:41 851UIView *temomoveView = [[UIView ... -
Xcode4 下设置 NSZombieEnabled 的方法
2011-12-02 09:39 1682点击 Xcode4 菜单 Product -> Edit ... -
objective-c 延迟用法
2011-11-24 10:21 1325//延迟执行 [self performSelector:@s ... -
创建颜色交替的table view cell
2011-11-23 19:34 0- (void)tableView:(UITableView ... -
关于block的学习笔记
2011-11-22 23:50 0现在是多核时代了,所以IOS也得跟上潮流,所谓block就是把 ... -
Thread、Process和Task的解释
2011-11-22 23:45 01、线程(Thread):用于引用执行代码的一个独立的路径。M ... -
cocoa 文件操作
2011-11-18 21:38 0打开查看文件 NSOpenPanel *openPanel=[ ... -
Button按下状态
2011-11-18 21:21 0[myButton setEnabled:YES]; ... -
延时函数和Timer的使用
2011-11-18 20:30 1621//延时函数: [NSThread sleepForTi ... -
iphone程序中实现截屏的一种方法
2011-11-18 20:29 923//导入头文件 #import QuartzCore/Q ... -
截取屏幕图片
2011-11-18 20:28 946//创建一个基于位图的图形上下文并指定大小为CGSizeM ... -
自定义按钮
2011-11-18 20:26 908UIButton *Btn; CGRect frame; ...
相关推荐
这个名为“ios-这是一个文本输入限制字数的通用输入框控件,简单实用”的压缩包提供了一个解决方案,允许开发者轻松实现对用户输入字数的限制。这个控件简化了处理文本输入长度的复杂逻辑,确保用户不会超过预设的...
总之,通过合理地运用Swift的编程特性,我们可以轻松实现对iOS应用中文本输入框字数的限制,提供更好的用户体验。这个压缩包文件中的"LimitInput"很可能就是这样一个实用的代码示例,帮助开发者快速理解和应用这个...
InputKit就是这样一个工具箱,它专门为iOS开发者提供了方便的方式来限制文本输入框的字数,灵感来源于知名的BlocksKit库。 InputKit是用Swift编写的,因此它可以充分利用Swift的语法优势,提供简洁、易读的API。...
在项目中使用文本输入框出UITextField之外还会经常使用 UITextView ,难免会有需求监听UITextView文本框内文本数量.下面介绍在swift3中两种常用方式 方式一: 全局通知 1.注册通知 在合适位置注册监听UITextView文本...
在这里,开发者会获取`UITextField`的输入值,进行简单的验证(如非空检查、长度限制等),然后可能调用网络服务接口进行用户认证。如果认证成功,应用会根据需求切换到文本界面或其他主界面;如果失败,则显示错误...
作者631106979,源码WCLNavigationController,UITextField和UITextView,我们经常使用,我们要使输入框只输入电话号码,而且只能输入11位,我们发微博,要限制字数。 使用方法: 调用setValue: forKey:这个方法 ...