2015-06-29 26 views
6

Ciao Sto usando TextInputLayout nella mia app. Voglio impostare il colore del testo suggerimento e il colore delle etichette fluttuanti (sia a fuoco che a fuoco) su bianco. Ho provato sotto il codice.come cambiare il colore del testo suggerimento di textinputlayout

<android.support.design.widget.TextInputLayout 
android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/TextLabel"> 

<android.support.v7.widget.AppCompatEditText 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:hint="Hiiiii" 
android:id="@+id/edit_id"> 
</android.support.v7.widget.AppCompatEditText> 
</android.support.design.widget.TextInputLayout> 

<style name="TextLabel" parent="TextAppearance.AppCompat"> 
//hint color And Label Color in False State 
<item name="android:textColorHint">@color/Color Name</item> 
<item name="android:textSize">20sp</item> 
//Label color in True State And Bar Color False And True State 
<item name="colorAccent">@color/Color Name</item> 
<item name="colorControlNormal">@color/Color Name</item> 
<item name="colorControlActivated">@color/Color Name</item> 
</style> 

Si sta lavorando correttamente per lecca-lecca, ma non per minore versions.How posso raggiungere lo stesso nelle versioni inferiori come bene?

risposta

0

Ho una risposta per questo. Nelle versioni del SO inferiori al lecca-lecca dobbiamo impostare il colore del testo come bianco (nel mio caso) nel tema dell'app. Allora funzionerà.

0

Dare lo stesso stile-Text Input Style che si stanno dando alla Edittext

<!--Text Input Style--> 
    <style name="styleTextInputLayout" parent="Widget.Design.TextInputLayout"> 
     <item name="android:textColor">?android:attr/textColorSecondary</item> 
     <item name="android:textColorHint">?android:attr/textColorSecondaryInverse</item> 
    </style> 


<!--EditText--> 
    <style name="styleEditText" parent="Widget.AppCompat.EditText"> 
     <item name="android:textColor">?android:attr/textColorSecondary</item> 
     <item name="android:textColorHint">?android:attr/textColorSecondaryInverse</item> 
    </style> 

dare ai vostri rispettivi colori per i tag sopra

<android.support.design.widget.TextInputLayout 
        style="@style/styleTextInputLayout" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"> 

        <EditText 
         android:id="@+id/edtTextFirstName" 
         style="@style/styleEditText" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:layout_marginBottom="@dimen/dimen_5_dp" 
         android:layout_marginTop="@dimen/dimen_5_dp" 
         android:hint="@string/hint_first_name" 
         android:imeOptions="actionNext" 
         android:inputType="textPersonName|textCapWords" 
         android:singleLine="true" /> 
       </android.support.design.widget.TextInputLayout> 

sopra codice funziona con

compile 'com.android.support:appcompat-v7:23.0.1' 
compile 'com.android.support:design:23.0.1' 

Stavo affrontando problema con la versione 22, potrebbe esserci qualche bug a causa del quale Input testo ignora lo stile fornito ad esso.

Soluzione per com.android.support:design sotto 23 è:

style.xml

<style name="styleTextInputTextAppearance" parent="TextAppearance.AppCompat"> 
     <item name="android:textColorHint">?android:attr/textColorSecondaryInverse</item> 
    </style> 

tema insieme a TextInputLayout

<android.support.design.widget.TextInputLayout 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:theme="@style/styleTextInputTextAppearance"> 

        <EditText 
         android:id="@+id/edtTextTowerName" 
         style="@style/styleEditText" 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:layout_marginBottom="@dimen/dimen_5_dp" 
         android:layout_marginTop="@dimen/dimen_5_dp" 
         android:hint="@string/hint_tower_name" 
         android:imeOptions="actionNext" 
         android:inputType="textCapWords" 
         android:singleLine="true" /> 
       </android.support.design.widget.TextInputLayout> 
Problemi correlati