【问题标题】:UITextView get previous character - (i.e character before the cursor position) (iOS7)UITextView 获取前一个字符 - (即光标位置之前的字符)(iOS7)
【发布时间】:2014-06-18 12:07:43
【问题描述】:

我不知道如何获取输入的前一个字符。所以换句话说,我怎样才能在 UITextView 内的任何位置获取光标之前的字符。

NSInteger pos = [self.textInput offsetFromPosition:self.textInput.beginningOfDocument toPosition:textrange.start];

CGRect s = [self.textInput caretRectForPosition:self.textInput.selectedTextRange.start];

UITextRange *textrange = [self.textInput characterRangeAtPoint: s.origin];

谢谢,

亲切的问候,

【问题讨论】:

标签: ios7 uitextview uitextposition uitextrange


【解决方案1】:

谢谢它是我正在寻找的,我之前确实看到过,但不是 100% 确定,我稍微修改了一下,它很好。

    UITextPosition *beginning = self.textInput.beginningOfDocument;
    UITextPosition *selectionStart = self.textInput.selectedTextRange.start;
    UITextPosition *selectionEnd = self.textInput.selectedTextRange.end;
    NSInteger location = [self.textInput offsetFromPosition:beginning toPosition:selectionStart];
    NSInteger length = [self.textInput offsetFromPosition:selectionStart toPosition:selectionEnd];
    NSRange selectedRange = NSMakeRange(location,length);
    NSRange range = NSMakeRange(selectedRange.location-1,1);

    NSString *lastChar = [textValue substringWithRange:range];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-01
    • 2013-02-15
    • 1970-01-01
    • 1970-01-01
    • 2011-09-19
    • 2013-02-07
    • 1970-01-01
    相关资源
    最近更新 更多