Comment définir la couleur d'un TextView dans Android?

Dans le fichier string.xml, j'utilise la balise suivante

<color name="mycolor1">#F5DC49</color> 

Si j'utilise

  • Galerie de texte sur Android?
  • Android SQLite Supprimer la ligne du tableau où 2 arguments
  • Afficher les informations sur les méthodes dans Android Studio
  • Android: Quand dois-je utiliser un gestionnaire () et quand dois-je utiliser un fil?
  • ClassCastException: CustomFragment ne peut pas être diffusé sur android.app.Fragment / Using android.support.v4.app.Fragment
  • Comment configurer le bouton onclicklistener qui se trouve dans une boîte de dialogue personnalisée
  •   textview1.setTextColor(Color.CYAN); 

    Ça marche, mais

      textview1.setTextColor(R.color.mycolor1); 

    ne fonctionne pas.

    Comment puis-je utiliser la couleur définie dans le fichier XML?

    3 Solutions collect form web for “Comment définir la couleur d'un TextView dans Android?”

    TextView.setTextColor() prend un int représentant la couleur (par ex. 0xFFF5DC49) et non l'ID de ressource du fichier xml. Dans une activité, vous pouvez faire quelque chose comme:

      textView1.setTextColor(getResources().getColor(R.color.mycolor)) 

    En dehors d'une activité, vous aurez besoin d'un Context par exemple.

      textView1.setTextColor(context.getResources().getColor(R.color.mycolor)) 
      textView1.setTextColor(Color.parseColor("#F5DC49")); 

    Sans ressources

    context.getResources().getColor est context.getResources().getColor .

    Vous devez utiliser ContextCompat.getColor () , qui fait partie de la bibliothèque Support V4 (il fonctionnera pour toutes les API précédentes).

     ContextCompat.getColor(context, R.color.my_color); 

    Vous devrez ajouter la bibliothèque Support V4 en ajoutant ce qui suit au tableau des dependencies intérieur de votre application build.gradle:

     compile 'com.android.support:support-v4:23.0.1' # or any version above 

    Si vous vous souciez de la thématique, la documentation précise que la méthode utilisera le thème du contexte:

    À partir de M, la couleur renvoyée sera conçue pour le thème du contexte spécifié

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.