Как выделить или изменить цвет текста в iOS?

Я хотел бы выделить или изменить цвет определенных слов в тексте, например, когда вы ищете термин, вы получаете выделенные слова в результатах поиска. Я знаю, что не могу этого сделать с NSStrings, но как я смогу это сделать? Я хотел бы отображать текст в UITextView, но при необходимости могу сделать другие варианты.

Спасибо


person SMA2012    schedule 29.11.2012    source источник


Ответы (3)


В iOS 6 вы можете сделать это, потому что iOS 6 теперь позволяет UITextView (а также UILabel, UIButton и т. Д.) Отображать стилизованный текст (NSAttributedString). Вы раскрашиваете слово NSForegroundColorAttributeName, а его фон NSBackgroundColorAttributeName и готово, вот и ваше выделение. На эту тему есть несколько очень хороших видеороликов WWDC 2012.

person matt    schedule 29.11.2012

Единственный способ, которым я могу думать прямо сейчас, - это использовать UIWebView и использовать CSS и javascript для выделения слов.

Вы можете проверить этот ответ о переполнении стека для примера того, как выделить текст с помощью jQuery и CSS.

Также вы можете проверить этот пример

person Paul N    schedule 29.11.2012

Я предпочитаю использовать EgoTextView, вы можете изменить цвет для диапазона текстов. Проверьте код здесь.

person Paramasivan Samuttiram    schedule 29.11.2012