我有一个UITextView,我限制用户输入超过150个字符。我通过实现以下方法来做到这一点。现在,当用户复制超过150个字符并将其粘贴到此文本视图中时,由于此方法验证,不允许粘贴操作。在包含超过150个字符的粘贴操作时,我想先取150个字符并将其粘贴到UITextView中。我怎么能这样做?
- (BOOL)textView:(UITextView *)iTextView shouldChangeTextInRange:(NSRange)iRange replacementText:(NSString *)iText
答案 0 :(得分:5)
- (BOOL)textView:(UITextView *)iTextView shouldChangeTextInRange:(NSRange)iRange replacementText:(NSString *)iText {
if (iText.length < 150) {
return YES;
}
iTextView.text = [iText substringToIndex:150];
return NO;
}
简而言之,通过获取输入字符串的子字符串来检查输入是否超出边界并取前150个字符。手动将其插入文本视图并返回NO
。