关于iOS的键盘输入长度限制研究
来源:互联网 发布:mac pro 屏幕尺寸 编辑:程序博客网 时间:2024/06/05 16:06
iOS向我们提供了控制UITextField的输入长度限制方法:
- (BOOL)textField:(UITextField *) textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { if(rang.length > 10) { return NO; } return YES;}
当输入长度超过10,不让输入键盘输入。
但是这样并不能完全起作用,在中文输入的时候,我们会发现iOS输入法向我们提供了联想词汇,当我们从联想词汇向输入框添加文字的时候,并不会使上面的委托方法调用,这时候我们的UITextField输入框的字符串长度将会超过10,这时候我们不得不采用一些额外的方法了,比如:
[textField addTarget:self action:@selector(textValueChange:) forControlEvents:UIControlEventEditingChanged];
我们给UITextField对象添加了一个事件,当输入变化的时候会调用该事件方法:
- (void) textValueChange:(UITextField *) textField { NSInteger length = textField.text.length; if (length > 10) { textField.text = [textField.text substringToIndex:10]; }}
当输入长度大于10的时候,我们取前10个字符,类似的问题还可以应用于UISearchBar,UITextView。
1 0
- 关于iOS的键盘输入长度限制研究
- 关于String的长度限制
- iOS stringByEvaluatingJavaScriptFromString的参数长度限制
- iOS---限制文本框输入的长度
- iOS 限制UITextField的输入长度
- iOS限制TextField可输入的长度
- iOS textfield限制输入的最大长度
- iOS 限制输入框的字符长度
- 关于字段长度限制的BUG
- 关于JAVA String长度的限制--转载
- 关于textarea 限制长度 的问题
- 关于InnoDB索引长度限制的tips
- 关于InnoDB索引长度限制的问题
- 关于InnoDB索引长度限制的tips
- js关于字符长度限制的问题
- 关于 InnoDB 索引长度限制的 tips
- 关于RSA加密算法的长度限制问题
- ios 限制输入长度
- Leetcode: Maximum Product of Word Lengths
- MySQL 日志
- week15---12月18日 JQ事件
- C++11: function type
- Camshift原理
- 关于iOS的键盘输入长度限制研究
- ubuntu手动安装eclipse
- Java基础--数组
- iOS socket 使用 相关知识
- MySQL 锁机制
- 黑马程序员——网络编程之UDP
- JSP Model1 和JSP Model2
- MySQL 权限与安全
- 微信HTML5抽奖活动的现实