Utilisation dynamique de ColorStateList
bonjour,
pour modifier la couleur de mon texte dans les items d'une listview, j'utilise une ColorStateList :
Code:
1 2 3 4 5 6 7
| <?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_pressed="true" android:color="@color/bleu" />
<item android:state_focused="true" android:color="@color/rouge" />
<item android:state_selected="true" android:color="@color/vert" />
<item android:color="@color/jaune"/>
</selector> |
quand j'associe cette colorstatelist à la propriété android:textcolor de chaque textview de mon item directement dans le layout de l'item, tout fonctionne parfaitement.
au final, j'ai besoin d'associer dynamiquement cette colorstatelist ou une autre aux textview (en fonction d'un critère spécifique).
j'ai donc retiré la référence dans le layout et je fais l'association à partir de la fonction getview de mon adapter :
Code:
1 2 3 4 5 6 7 8 9 10
| if (support_pret_actif)
{
holder.tvhFilm_titre.setTextColor(R.color.mycolorlist1);
holder.tvhFilm_categorie.setTextColor(R.color.mycolorlist1);
}
else
{
holder.tvhFilm_titre.setTextColor(R.color.mycolorlist2);
holder.tvhFilm_categorie.setTextColor(R.color.mycolorlist2);
} |
là, rien ne fonctionne et les couleurs de texte sont celles par défaut.
j'ai oublié quelque chose ?