选择被删除后获取剩余文本

时间:2013-04-08 22:23:11

标签: ios ios6 uitextview uitextrange

选择被删除后是否有一种获取剩余文本的简单方法?让我假设我有一个带有“Hello,Jim”的textview控件。如果选择了“Jim”,我想将“Hello”存储到变量中,“不使用[textview1 cut:self]。在下面的代码中,我可以得到另一部分。

UITextRange *selectedTextRange = textview1.selectedTextRange;
NSUInteger location = [textview1 offsetFromPosition:textview1.beginningOfDocument toPosition:selectedTextRange.start];
NSUInteger length = [textview1 offsetFromPosition:selectedTextRange.start toPosition:selectedTextRange.end];
NSRange selectedRange = NSMakeRange(location, length);
NSString *str = [textview1.text substringWithRange:selectedRange];
NSLog(@"%@",str);

当然,这是另一部分。

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

NSString *remaining = [textview1.text stringByReplacingCharactersInRange:textview1.selectedRange withString:@""];

答案 1 :(得分:0)

我认为它类似于以下内容。 (修正值)

NSMutableString *str = [NSMutableString stringWithString:@""];
if (textview1.text.length > length) {
    [str appendString:[textview1.text substringToIndex:location]];
    [str appendString:[textview1.text substringFromIndex:location + length]];
} else {
    [str appendString:@""];
}
[self setText:str];