UITextView和UITextField输入字符串长度限制

在网上有很多限制输入字符串长度的解决方案,但是很多在不同的iOS系统下有的就不生效了比较了许多方法最好用的如下。


- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text

{

if ([text isEqualToString:@""]) {

return YES;

} else if ([text rangeOfString:@" "].location != NSNotFound) {

return NO;

}

if((textView.text.length + text.length) > self.maxNumber){

return NO;

}

NSInteger existedLength = textView.text.length;

NSInteger selectedLength = range.length;

NSInteger replaceLength = text.length;

if (existedLength - selectedLength + replaceLength > self.maxNumber) {

return NO;

}

if (textView.text.length>self.maxNumber) {

textView.text = [textView.text substringToIndex:self.maxNumber];

return NO;

}

return YES;

}

其中textView.text = [textView.text substringToIndex:self.maxNumber]; 截取的就是制定长度内的字数

你可能感兴趣的:(UITextView和UITextField输入字符串长度限制)