Можно ли установить цвет всего текста в TextView?
Я хотел бы сделать что-то похожее на приложение Twitter, в котором часть текста синего цвета. Смотрите изображение ниже:
(источник: twimg.com )
android
text
formatting
textview
hpique
источник
источник
Вот небольшая справочная функция. Отлично подходит, когда у вас есть несколько языков!
источник
Я всегда нахожу наглядные примеры, когда пытаюсь понять новую концепцию.
Фоновый цвет
Цвет переднего плана
комбинирование
Дальнейшее обучение
источник
Если вы хотите больше контроля, вы можете проверить
TextPaint
класс. Вот как это использовать:источник
Установите свой
TextView
текстовый spannable и определитеForegroundColorSpan
для вашего текста.источник
Другой способ, который можно использовать в некоторых ситуациях, - это установить цвет ссылки в свойствах представления, которое принимает Spannable.
Если ваш Spannable будет использоваться, например, в TextView, вы можете установить цвет ссылки в XML следующим образом:
Вы также можете установить его в коде с помощью:
источник
Есть фабрика для создания Spannable, и избегайте приведения, как это:
источник
Установите цвет для текста , передав строку и цвет :
Установите текст в TextView / Button / EditText и т. Д., Вызвав код ниже:
TextView:
Получить цветную строку:
Установить текст в TextView:
Готово
источник
Вывод:
источник
Просто чтобы добавить к принятому ответу, поскольку все ответы, кажется, говорят
android.graphics.Color
только о : что, если цвет, в котором я хочу, определенres/values/colors.xml
?Например, рассмотрим цвета Material Design, определенные в
colors.xml
:(
android_material_design_colours.xml
твой лучший друг)Затем используйте,
ContextCompat.getColor(getContext(), R.color.md_blue_500)
где вы будете использоватьColor.BLUE
, так что:будет выглядеть так:
Где я нашел это:
источник
Вот функция расширения Kotlin, которую я имею для этого
Используйте его после того, как вы установили свой текст в TextView примерно так
источник
вставьте этот код в ваш MainActivity
источник
Ниже работает отлично для меня
источник
Некоторые ответы здесь не актуальны. Потому что вы (в большинстве случаев) добавите пользовательское действие по нажатию на вашу ссылку .
Кроме того, как указано в справочной документации, цвет ссылки на составную строку будет иметь цвет по умолчанию. Msgstr "Цвет ссылки по умолчанию - это цвет акцента темы или android: textColorLink, если этот атрибут определен в теме".
Вот способ сделать это безопасно.
Тогда использовать это.
Надеюсь, это сильно поможет!
источник
Из документов разработчика, чтобы изменить цвет и размер Spanable:
1- создать класс:
2 Создайте свой spannable, используя этот класс:
источник