65 votes

Comment définir la couleur du texte dans l'application Android pour tout le texte ?

Je souhaite définir une couleur de texte par défaut pour mon application Android.

J'ai une classe d'activités de base, à partir de laquelle toutes les activités sont étendues et j'ai pensé que cela pourrait être un bon endroit pour définir les couleurs.

Sinon quelle est la meilleure solution ? Peut-être des styles ?

Le problème, c'est que tout est nouveau pour moi, alors n'hésitez pas à me conseiller et à fournir également des extraits de code et des explications.

Voici à quoi ressemble ma classe de base. Comme vous pouvez le voir c'est assez vide

 package com.ccslocal.mobile.quiz.jls;

import android.app.Activity;
import android.os.Bundle;

public class BaseActivity extends Activity {
    //set up app preferences here
}

18voto

denis.solonenko Points 6348

Créez un thème personnalisé pour votre application. Consultez le guide officiel .

15voto

anddev Points 1040

Oui, vous avez raison, vous pouvez le faire en utilisant le style. Ou vous pouvez utiliser TextView.getTextColors().getDefaultColor() pour définir la couleur du texte par défaut. En fait, je ne l'ai jamais utilisé, mais je pense que cela peut vous aider.

Pour le style

 <style name="TextColor">
    <item name="android:textColor">#00FF00</item>
</style>      

Puis dans le fichier de mise en page

 <TextView  style="@style/TextColor" />

10voto

Labeeb P Points 12645

Définissez votre couleur par défaut dans votre res/values/colors.xml comme ceci

 <color name="defaultTextColor">#ffffff</color>

Alors cette couleur à tous tes textes

 android:textColor="@color/defaultTextColor"

ou

 textView.setTextColor(R.color.defaultTextColor);

7voto

Wojtek Points 582
  • Créer un style pour TextView :

     <style name="TextViewTheme">
        <item name="android:textColor">@android:color/white</item>
    </style>
    
  • Appliquez-le avec style pour l'application :

     <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="android:textViewStyle">@style/TextViewTheme</item>
    </style>
    
  • Et n'oubliez pas de changer de style dans AndroidManifest.xml :

     <application
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        ...
    </application>
    

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X