1

Dans la source de la bibliothèque de conception, nous pouvons trouver cette ligne:style personnalisé TextInputLayout attribuer l à partir de thème

<declare-styleable name="TextInputLayout"> 
    <attr format="reference" name="hintTextAppearance"/> 
    <attr name="android:hint"/> 
    <attr format="boolean" name="errorEnabled"/> 
    <attr format="reference" name="errorTextAppearance"/> 
    <attr format="boolean" name="counterEnabled"/> 
    <attr format="integer" name="counterMaxLength"/> 
    <attr format="reference" name="counterTextAppearance"/> 
    <attr format="reference" name="counterOverflowTextAppearance"/> 
    <attr name="android:textColorHint"/> 
    <attr format="boolean" name="hintAnimationEnabled"/> 
</declare-styleable> 

Je veux changer la couleur du texte d'erreur par errorTextAppearance attribute

Je sais comment personnaliser via app: {atribut-name} dans la déclaration xml TextInputLayout mais comment puis-je personnaliser l'un de ces attributs à partir de ma définition de thème?

Répondre

0

styles.xml:

<style name="TextInputLayout.Error" parent="@style/TextAppearance.Design.Error"> 
    <item name="android:textColor">@color/textinput_error_color</item> 
</style> 

<style name="Theme.AppName.TextInputLayout" parent="@style/Widget.Design.TextInputLayout"> 
    <item name="errorTextAppearance">@style/TextInputLayout.Error</item> 
</style> 

dans votre mise en page:

<android.support.design.widget.TextInputLayout 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       style="@style/Theme.AppName.TextInputLayout"> 

       ... 
      </android.support.design.widget.TextInputLayout> 

vous pouvez également ajouter d'autres articles de Widget.Design.TextInputLayout dans Theme.AppName.TextInputLayout

+0

Merci d'avoir pris le temps de répondre. :-) Quand j'ai écrit dans le thème je me demandais comment appliquer ce style en utilisant un attribut de la généralisation du thème. (Sans appliquer un style ou un attribut au TextInputLayout directement.) – user40797