Как установить цвет текста TextView в коде? - PullRequest
504 голосов
/ 05 января 2011

В XML мы можем установить цвет текста с помощью атрибута textColor, например android:textColor="#FF0000". Но как я могу изменить это кодированием?

Я пробовал что-то вроде:

holder.text.setTextColor(R.color.Red);

Где holder это просто класс, а text имеет тип TextView. Красный - это значение RGB (# FF0000), заданное в строках.

Но он показывает другой цвет, а не красный. Какой тип параметра мы можем передать в setTextColor ()? В документации написано int, но является ли это ссылкой на ресурс или что-то еще?

Ответы [ 34 ]

6 голосов
/ 27 июня 2011

Я считаю, что если вы хотите указать цвет в качестве ресурса (в файле XML ), вам придется предоставить его значение ARGB (а не просто значение RGB).

Попробуйте изменить значение цвета на #FFFF0000.Это должно дать вам красный.

5 голосов
/ 10 июня 2013
holder.text.setTextColor(Color.rgb(200,0,0));

или

myTextView.setTextColor(0xAARRGGBB);
5 голосов
/ 07 мая 2012

Использование:

TextView tv = new TextView(this);
tv.setTextColor(Color.rgb(285,0,0));
4 голосов
/ 16 апреля 2013

Используя адаптер, вы можете установить цвет текста, используя этот код:

holder.text_view = (TextView) convertView.findViewById(R.id.text_view);
holder.text_view.setTextColor(Color.parseColor("#FF00FF"));
4 голосов
/ 30 августа 2018

text.setTextColor(getResource().getColor(R.color.black)) вы создали черный цвет в color.xml.

OR

text.setTextColor(Color.parseColor("#000000")) здесь введите желаемый шестнадцатеричный код

OR

text.setTextColor(Color.BLACK) Вы можете использовать статические поля цвета

4 голосов
/ 24 мая 2017
TextView text = new TextView(context);
text.setTextColor(Color.parseColor("any hex value of a color"));

Над кодом работает на моей стороне. Здесь text - это TextView , для которого необходимо установить цвет.

4 голосов
/ 31 мая 2016
text1.setTextColor(Color.parseColor("#000000"));
1 голос
/ 11 декабря 2017

Начиная с API 23, getResources().getColor() устарела.

Используйте это вместо:

textView.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.color_black));
1 голос
/ 29 апреля 2013
   textViewStatus.setTextColor(res.getColor(R.color.green));
1 голос
/ 19 апреля 2015

Чтобы установить цвет TextView, TextView.setTextColor(R.color.YOURCOLOR) недостаточно!

Его необходимо использовать следующим образом -

TextView myText = (TextView) findViewById(R.id.YoutTextViewID);

myText.setTextColor(getResources().getColor(R.color.YOURCOLOR);

ИЛИ

myText.setTextColor(Color.parseColor("#54D66A"));
...