Как установить android:textColor с помощью drawable в Android?

Я знаю, как установить цвет текста с помощью xml, но я не знаю, как это делается на Java.

В xml примерно так:

android:textColor="@drawable/selected_color"

в ЯВА?


person bytebiscuit    schedule 21.11.2011    source источник


Ответы (5)


Предполагая, что под «рисуемым» вы подразумеваете селектор с элементами цвета, вы должны обратиться к этот вопрос.

Вы не сможете использовать textcolor с рисунками изображений или селекторами, содержащими изображения.

person alex.zherdev    schedule 21.11.2011

Предполагая, что под "выводимым" вы подразумеваете селектор с цветными элементами, подобными этому:

разрешение/цвет/your_colors.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true" android:color="#ffffffff"/>
    <item android:color="#ff1c5fab"/>
</selector>

Вы можете использовать этот код: mText.setTextColor(getResources().getColorStateList(R.color.your_colors));

person madx    schedule 31.01.2015

цвет/selector_colors.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:color="@color/white" android:state_checked="true" />
    <item android:color="@color/white" android:state_pressed="true" />
    <item android:color="@color/white" android:state_activated="true" />

    <item android:color="@color/black" />

</selector>

вы должны реализовать его в текстовом виде следующим образом:

textview.setTextColor(context.getResources().getColorStateList(R.color.selector_colors));
person Samet ÖZTOPRAK    schedule 12.06.2017

Вы видели это, это или это ?

Последняя ссылка говорит использовать:

tvImagesTitle.setTextColor( getResources().getColor(R.color.blue) ); 
person Jack    schedule 21.11.2011

Одним из простых способов является использование HTML:

StringBuilder text = new StringBuilder();
text.append("<font color='").append(selectedColor).append("'>")                     .append("your text here").append("</font>");

textView.setText(Html.fromHtml(text.toString()), BufferType.SPANNABLE);
person Chris    schedule 21.11.2011