ios开发之UITextField、UITextView限制最大输入数
程序员文章站
2022-03-23 09:37:59
UITextField
不多说直接上代码
首先定一个全局常量maxNum, 指定一个最大输入范围
NSInteger const maxNum = 20;
创建一个UI...
UITextField
不多说直接上代码
首先定一个全局常量maxNum, 指定一个最大输入范围NSInteger const maxNum = 20;创建一个UITextField对像,为你的UITextField对象添加监听方法
[self.textField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];实现TextField的监听方法
#pragma mark -------UITextFiledDelegate -(void)textFieldDidChange:(UITextField *)textField { NSString *toBeString = textField.text; //获取高亮部分 UITextRange *selectedRange = [textField markedTextRange]; UITextPosition *position = [textField positionFromPosition:selectedRange.start offset:0]; if (!position || !selectedRange) { if (toBeString.length > maxNum) { NSRange rangeIndex = [toBeString rangeOfComposedCharacterSequenceAtIndex:maxNum]; if (rangeIndex.length == 1) { textField.text = [toBeString substringToIndex:maxNum]; } else { NSRange rangeRange = [toBeString rangeOfComposedCharacterSequencesForRange:NSMakeRange(0, maxNum)]; textField.text = [toBeString substringWithRange:rangeRange]; } } } }
UITextView
首定以一个全局常量NSInteger const maxNum = 20;创建一个UITextView对象并实现它的监听代理方法
#pragma mark ------- UITextViewDelegate - (void)textViewDidChange:(UITextView *)textView { if (textView.text.length >= maxDetailNum) { textView.text = [textView.text substringToIndex:maxDetailNum]; } }
推荐阅读
-
iOS UITextField、UITextView只限输入中文、英文、数字及实时限制字符个数的封装实现代码
-
XZ_iOS之UITextView或UITextField实时修改输入的部分文字的颜色(下)
-
iOS UITextField最大字符数和字节数的限制详解
-
iOS UITextField最大字符数和字节数的限制详解
-
IOS 开发之 UITextField限制字数的方法
-
ios开发之UITextField、UITextView限制最大输入数
-
iOS UITextField、UITextView只限输入中文、英文、数字及实时限制字符个数的封装实现代码
-
IOS 开发之 UITextField限制字数的方法
-
[iOS]UITextField和UITextView限制输入字符数量方面
-
XZ_iOS之UITextView或UITextField实时修改输入的部分文字的颜色(上)