ios--uitextfield动态限制输入的字数(解决方案)
2014-06-26 16:21
537 查看
1、定义一个事件:
2、对UITextField控件添加监听事件:
-(IBAction)limitLength:(UITextField *)sender { bool isChinese;//判断当前输入法是否是中文 if ([[[UITextInputMode currentInputMode] primaryLanguage] isEqualToString: @"en-US"]) { isChinese = false; } else { isChinese = true; } if(sender == self.txtName) { // 8位 NSString *str = [[self.txtName text] stringByReplacingOccurrencesOfString:@" " withString:@""]; if (isChinese) { //中文输入法下 UITextRange *selectedRange = [self.txtName markedTextRange]; //获取高亮部分 UITextPosition *position = [self.txtName positionFromPosition:selectedRange.start offset:0]; // 没有高亮选择的字,则对已输入的文字进行字数统计和限制 if (!position) { NSLog(@"汉字"); if ( str.length>=9) { NSString *strNew = [NSString stringWithString:str]; [self.txtName setText:[strNew substringToIndex:8]]; } } else { NSLog(@"输入的英文还没有转化为汉字的状态"); } }else{ NSLog(@"str=%@; 本次长度=%d",str,[str length]); if ([str length]>=9) { NSString *strNew = [NSString stringWithString:str]; [self.txtName setText:[strNew substringToIndex:8]]; } } } }
2、对UITextField控件添加监听事件:
//UIControlEventEditingChanged [self.txtName addTarget:self action:@selector(limitLength:) forControlEvents:UIControlEventEditingChanged];
相关文章推荐
- ios--uitextfield动态限制输入的字数(解决方案) 汉字和英文状态区别 判断当前输入法是否是中文
- ios--uitextfield动态限制输入的字数
- ios--uitextfield动态限制输入的字数(解决方式)
- iOS开发笔记12:iOS7上UITextField限制字数输入导致崩溃问题
- iOS 限制输入字数完美解决方案
- iOS中UITextField输入字数限制
- UItextfield 动态限制输入的字数
- uitextfield动态限制输入的字数-b
- iOS UITextField限制输入字数
- iOS--输入框UITextField输入限制字数
- iOS 限制输入字数完美解决方案
- iOS 限制输入字数完美解决方案
- ios中实现对UItextField,UITextView等输入框的字数限制
- 动态限制UITextField的输入位数
- IOS-如何干掉UITextField的长按手势菜单与输入内容限制
- 限制UITextField输入字数
- iOS 除去两边空格与UITextField限制输入内容
- IOS控制UITextField输入字数
- [iOS] UITextField如何准确限制中文输入文本长度
- IOS开发限制UITextField只可以输入数字