Мне нужно найти пиксельную рамку для разных диапазонов в текстовом представлении. Я использую - (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;
}
Apple говорит, что нужно создать подклассы UITextRange
и UITextPosition
, чтобы принять протокол UITextInput
. Я этого не делаю, но я все равно попытался, следуя примеру кода документа и передав подкласс firstRectForRange
, что привело к сбою.
Если есть более простой способ добавить разноцветные UILables
в текстовое представление, скажите, пожалуйста. Я пытался использовать UIWebView с content editable
, установленным в TRUE, но я не люблю общаться с JS, и раскрашивание — это единственное, что мне нужно.
Заранее спасибо.
UITextRange
, чтобы установить его. Единственный способ установить свойстваUITextRange
— получить к ним доступ в подклассе. Он определяетstart
иend
как свойства, но их можно установить внутри, ссылаясь на_start
и_end
. - person Justin   schedule 04.02.2012readonly
свойства. Вот почему это комментарий, а не ответ. - person Justin   schedule 05.02.2012