Изменить цвет фона подстроки нарисованной строки NSString? - PullRequest
1 голос
/ 19 января 2010

Я использую подкласс ABTableViewCell от Atebits для оптимизации прокрутки для довольно больших потенциальных источников данных в зависимости от того, что возвращает мой поиск. (В любом случае, я бы настоятельно рекомендовал подкласс даже для самых простых табличных представлений, они прокручиваются как масло!)

У меня нарисована строка NSString:

[nameLabel drawInRect:nameRect withFont:nameLabelFont lineBreakMode:UILineBreakModeWordWrap];

Я подумал, что было бы круто, чтобы выделенное слово (то есть «Имя содержит текст поиска») было выделено. Это так же просто, как изменить цвет фона за подстрокой nameLabel?

редактирует:

Кажется, что я ищу NSAttributedString, но оказалось, что его не существует для iPhone.

Из дальнейшего чтения может показаться, что HTML и UIWebView - это путь для этого ... но это кажется ужасно дорогим. Это действительно решение?

Ответы [ 3 ]

1 голос
/ 22 января 2010

Эй, посмотрите TTStyledLabel - он может делать то, что вы хотите.

0 голосов
/ 19 января 2010

Дикая идея - это ваш текст одной строкой?Если это так, вы можете вычислить ширину «Имя», а затем ширину «СОДЕРЖИТ», и вы будете знать, где именно это нарисовано на экране.Как только вы просто поместите полупрозрачный цветной UIView поверх текста.

Я не пробовал сам, но это то, что я сделал бы, если бы у меня было , чтобы это работало.

0 голосов
/ 19 января 2010
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...