我需要在文本视图中找到不同范围的像素帧。我正在使用它- (CGRect)firstRectForRange:(UITextRange *)range;
来做到这一点。但是我不知道如何实际创建一个UITextRange
.
基本上这就是我正在寻找的:
- (CGRect)frameOfTextRange:(NSRange)range inTextView:(UITextView *)textView {
UITextRange*range2 = [UITextRange rangeWithNSRange:range]; //DOES NOT EXIST
CGRect rect = [textView firstRectForRange:range2];
return rect;
}
苹果公司表示,为了采用该协议,必须进行子UITextRange
类UITextPosition
化UITextInput
。我不这样做,但我还是尝试了,按照文档的示例代码并将子类传递给firstRectForRange
导致崩溃的子类。
如果有一种更简单的方法可以向文本视图添加不同的颜色UILables
,请告诉我。我曾尝试使用content editable
设置为 TRUE 的 UIWebView,但我不喜欢与 JS 交流,而着色是我唯一需要的。
提前致谢。