Comment changer la taille de l'indice de TextInputLayout

C'est mon xml

<android.support.design.widget.TextInputLayout
                style="@style/main_input_text"
                android:layout_marginTop="@dimen/activity_medium_margin"
                app:hintTextAppearance="@style/TextAppearence.App.TextInputLayout">

                <android.support.v7.widget.AppCompatEditText
                    style="@style/main_edit_text"
                    android:inputType="text" />

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

Et c'est le style

<style name="main_input_text">
        <item name="android:layout_width">match_parent</item>
        <item name="android:layout_height">@dimen/activity_edittext_height</item>
        <item name="android:background">@drawable/mc_shape_border_button_transparent</item>
        <item name="android:gravity">center_vertical</item>
        <item name="android:paddingTop">@dimen/activity_extra_small_margin</item>
        <item name="android:paddingBottom">@dimen/activity_extra_small_margin</item>
        <item name="android:keyTextSize">8sp</item>
        <item name="android:textSize">8sp</item>
</style>

Je ne trouve pas quelque chose comme hintSize, textSize et keyTextSize n'aidant pas

34
demandé sur Ara Badalyan 2015-09-29 14:55:04

5 réponses

Dans vos styles.xml

<style name="TextLabel" parent="TextAppearance.Design.Hint">
    <item name="android:textSize">16sp</item>
</style>

, puis dans votre fichier de mise en page:

<android.support.design.widget.TextInputLayout
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_marginLeft="@dimen/activity_horizontal_margin"
         android:layout_marginRight="@dimen/activity_horizontal_margin"
         android:layout_marginTop="12dp"
         app:hintTextAppearance="@style/TextLabel"
         android:minHeight="30dp">
85
répondu Santiago Martínez 2017-09-29 07:36:21

Modifiez le app:errorTextAppearance TextInputLayout en XML.

<android.support.design.widget.TextInputLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:errorTextAppearance="@style/CustomTextInputLayoutStyle.ErrorTextStyle">

CustomTextInputLayoutStyle.ErrorTextStyle est défini dans styles.xml comme

<style name="CustomTextInputLayoutStyle.ErrorTextStyle" parent="TextAppearance.Design.Error">
        <item name="android:textSize">10sp</item>
</style>
4
répondu nt-complete 2015-11-20 00:31:07

1) Ajoutez hintTextAppearance à votre InputLayout avec un style

<android.support.design.widget.TextInputLayout xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"     
    android:layout_height="wrap_content"
    app:hintTextAppearance="@style/TextInputLayoutHintText" >
    <android.support.design.widget.TextInputEditText            
        android:layout_width="match_parent"              
        android:layout_height="wrap_content"
        android:textSize="16sp" />
</android.support.design.widget.TextInputLayout>

2) Ensuite, ajoutez simplement le style à vos styles.xml

<style name="TextInputLayoutHintText">
   <item name="android:textColor">@color/gray</item>
   <item name="android:textSize">12sp</item></style>
1
répondu password 2018-01-12 18:03:01

@ Santiago Martínez réponse ne fonctionne que pour les conseils sur non vide Edittext (à l'intérieur TextInputLayout)

, Mais pour le vide Edittext, TextInputLayout indice prend bien de Edittext textSize.

0
répondu Neeraj Bagra 2018-10-04 02:43:39

Vous pouvez réduire la taille de la police sur EditText-cela réduira également la taille de l'indice. c'est à dire android:textSize="16sp"

-2
répondu Gopi Krishna 2015-09-29 12:09:08