iOS: Как лучше всего отобразить строку, у которой есть ее часть, другим цветом? - PullRequest
2 голосов
/ 28 марта 2012

У меня в настоящее время есть UILabel, в котором есть немного текста. Теперь мне нужно изменить цвет текста пары слов на этикетке. Я не думаю, что есть способ сделать это только с помощью UILabel, и мне было любопытно, как лучше всего это сделать.

Ответы [ 3 ]

4 голосов
/ 28 марта 2012

Вы можете поместить NSAttributedString в метку. Я опубликую пример из одного из моих проектов в секунду.

Редактировать: Я только что понял, что удалил код из проекта. В любом случае, вам нужен этот элемент управления, и все будет легко:

https://github.com/AliSoftware/OHAttributedLabel/

Это подкласс UILabel, который принимает приписанные строки.

1 голос
/ 28 марта 2012

Я считаю, что единственный способ сделать это - использовать Core Text или отобразить текст в виде HTML в UIWebView.

Базовый текст более эффективен и точнее очищает какао, но использование UIWebView намного проще, поскольку HTML довольно прост. Я бы сказал, что основная проблема с использованием веб-представления заключается в том, что вы не можете поддерживать прозрачный фон, о котором я упоминаю, потому что я знаю, что это часто требуется для текста.

Проверьте основной текст здесь: https://developer.apple.com/library/mac/#documentation/StringsTextFonts/Conceptual/CoreText_Programming/Introduction/Introduction.html

0 голосов
/ 28 марта 2012

Вы должны попробовать TTTAttributedLabel.Это вставная замена для UILabel, которая работает с NSAttributedString и достаточно эффективна для UITableViewCells.

Это , а не кусок из библиотеки Three20, которая, как известно, довольно тяжелая и раздутая.

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