真正的代理里把text=nil出问题
devcxm opened this issue · comments
Xiaoming commented
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text;
假如在真正的代理里执行以上方法时把textView.text=nil,再执行以下方法进行匹配就会出错
BOOL flag = YES;
id realDelegate = self.realDelegate;
if (realDelegate && [realDelegate respondsToSelector:@selector(textView:shouldChangeTextInRange:replacementText:)])
flag = [realDelegate textView:textView shouldChangeTextInRange:range replacementText:text];
int matchResult = YES;
if ([textView isKindOfClass:[TXLimitedTextView class]]) {
TXLimitedTextView *limitedTextView = (TXLimitedTextView *)textView;
NSMutableString *matchStr = [NSMutableString stringWithString:textView.text];
所以不管TXLimitedTextView还是TXLimitedTextField,在匹配正则时应该判断.text
是否为空。
tingxins commented
此处是越界问题,已容错处理。👀