Форматирование текста в UILabel по-разному - PullRequest
4 голосов
/ 30 сентября 2011

Я бы хотел, чтобы разные слова в UILabel были разных цветов. Означает ли это, что каждое слово должно быть другим UILabel? Я думаю, да, хотя конечно было бы неплохо просто как-то поместить цветные коды на этикетку, понимаете? Я думаю, я немного избалован текстовой разметкой в ​​HTML.

Ответы [ 3 ]

5 голосов
/ 30 сентября 2011

В iOS нет правильного UIRichTextView.Он в моем списке пожеланий для iOS 6 (и есть некоторые основания полагать, что мы можем получить его тогда из-за выпуска Pages).

Вы можете использовать несколько UILabel просмотров, Дополнения USSit NSString , Базовый текст, UIWebView или одна из нескольких сторонних сред, таких как:

  • NSAttributedString-Additions-for-HTML
  • CoreTextWrapper
  • OHAttributedLabel
  • OmniUI

Все текущие решения имеют разные проблемы.Самая распространенная проблема заключается в том, что трудно использовать функции выбора и копирования для работы с форматированным текстом, если вы не используете веб-представление.Веб-просмотры невероятно раздражают, потому что они асинхронны, и вам приходится много взаимодействовать с JavaScript.

Хотелось бы, чтобы был лучший ответ.

(Обязательный шиллинг: эта темаподробно рассмотрено в главе 18 « Программирование на iOS 5, раздвигающее границы» .)

2 голосов
/ 30 сентября 2011

UILabel не поддерживает сегментированное форматирование (все может иметь только один формат).

Посмотрите на OHAttributedLabel , который делает то, что вы хотите.

0 голосов
/ 30 сентября 2011

Насколько я знаю, вам нужно иметь отдельные ярлыки для каждого разноцветного слова.В зависимости от того, что вы пытаетесь сделать, вы можете использовать myLabel.textColor для изменения цвета периодически или по событиям и т. Д.

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