ios – UITextPosition到NSRange

前端之家收集整理的这篇文章主要介绍了ios – UITextPosition到NSRange前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要使用NSStringFromRange,但我只有一个开始和结束UITextPositions.如何将UITextPosition转换为NSRange.
NSMutableArray * wordArray = [[NSMutableArray alloc]init];
id<UITextInputTokenizer> tokenizer = tv.tokenizer;
UITextPosition *start = tv.beginningOfDocument;
while (![start isEqual:tv.endOfDocument]) {
    UITextPosition *end = [tokenizer positionFromPosition:start toBoundary:UITextGranularityWord inDirection:UITextStorageDirectionForward];
    NSString *word = [tv textInRange:[tv textRangeFromPosition:start toPosition:end]];
    [wordArray addObject:NSStringFromRange(<#NSRange range#>)];
    start = end;
}

解决方法

尝试这个:
NSInteger startOffset = [tv offsetFromPosition:tv.beginningOfDocument toPosition:start];
NSInteger endOffset = [tv offsetFromPosition:tv.beginningOfDocument toPosition:end];
NSRange offsetRange = NSMakeRange(startOffset,endOffset - startOffset);
[wordArray addObject:NSStringFromRange(offsetRange)];
原文链接:https://www.f2er.com/iOS/336498.html

猜你在找的iOS相关文章