Modification de l'apparence du texte dans des styles et des thèmes pour une application Android

Je suis en train d'écrire une application android et je suis désireux de modifier le thème de mon application.

J'ai réussi à modifier la couleur d'arrière-plan de l'application en utilisant un thème, mais j'ai du mal à modifier la valeur par défaut de l'apparence du texte.

C'est mon styles.xml fichier de ressources.

<resources>
    <style name="QTheme" parent="android:Theme.Light">
        <item name="android:windowBackground">@color/q_green</item>
        <item name="android:colorBackground">@color/q_green</item>
        <item name="android:textAppearance">@style/QText</item> 
    </style>

    <color name="q_green">#008000</color>
    <color name="white">#FFFFFF</color>

    <style name="QText" parent="@android:style/TextAppearance.Medium"> 
        <item name="android:textSize">20sp</item> 
        <item name="android:textColor">@color/white</item> 
        <item name="android:textStyle">bold</item>
        <item name="android:textFont">Verdana</item>
    </style>
</resources>

et juste pour vérifier, c'est un exemple de l'un de mes TextViews je veux le même style dans mon fichier de mise en page.

<TextView
    android:id="@+id/txtDevice"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:text="@string/device" 
/>

N'importe qui peut voir où je vais mal?

  • Vous avez juste surdéfini la TextAppearance.Medium style dans votre thème(qui ne sera pas modifier le TextView). Si vous souhaitez modifier le TextView de regarder ensuite remplacer le textViewStyle attribut style dans votre thème. Ou vous pourriez appliquer votre style personnalisé à l'aide de android:textAppearance
  • Merci. J'ai changé le nom de l'élément pour android.textViewStyle et qui semblait faire l'affaire. Il a changé tehe texte à l'intérieur de mon toupies bien, pas juste mon texte. Est-il un moyen de se différencier?
  • Je ne suis pas sûr. Si je ne me trompe pas le Spinner's TextView élément a un style différent(qui hérite de la TextView style), pointé par la spinnerItemStyle attribut dans le thème. Vous souhaiterez peut-être définir que pour @android:style/Widget.TextView.SpinnerItem et voir comment ça se passe.