先选中多个字符,再删除 是在 - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text 代理方法
里面
直接上核心代码
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
///tmpRange 是我们需要删除的字符串的位置
if ([text isEqualToString:@""]) { // 删除
if ((range.location + range.length) == (tmpRange.location + tmpRange.length)) {
if ([NSStringFromRange(tmpRange) isEqualToString:NSStringFromRange(textView.selectedRange)]) {
// 第二次点击删除按钮 删除
[self.topicArray removeObjectAtIndex:0];
[self.toolView setOrigionSelectState];
return YES;
} else {
// 第一次点击删除按钮 选中
textView.selectedRange = tmpRange;
return NO;
}
}
}