2017-07-12 184 views
0

我想更改TextInputEditText提示的文本颜色。看起来无论我改变什么,颜色都是主要应用主题的颜色。更改TextInputEditText提示颜色

  <android.support.design.widget.TextInputLayout 
       android:id="@+id/enter_template_name_edit_text_input_layout" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:textColorHint="@color/warm_grey"> 

       <android.support.design.widget.TextInputEditText 
        android:id="@+id/template_name_text_input_edit_text" 
        style="@style/EditTextBaseStyle" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:gravity="start" 
        android:hint="@string/add_nitrogen_template_name_label" 
        android:imeOptions="actionNext" 
        android:inputType="textCapWords|textNoSuggestions" 
        android:maxLines="1" 
        android:paddingBottom="@dimen/md_content_padding_bottom" 
        android:textAlignment="textStart" 
        android:textColorHint="@color/warm_grey" 
        android:textSize="32sp" /> 

和底座风格

<style name="EditTextBaseStyle" parent="Widget.AppCompat.EditText"> 
    <item name="android:textViewStyle">@style/TextViewStyle</item> 
    <item name="android:textColor">@color/middle_black</item> 
    <item name="android:textStyle">normal</item> 
    <item name="android:textSize">16sp</item> 
</style> 

我曾尝试加入

android:textColorHint="@color/warm_grey" 

为基本风格,以及我AppTheme并没有帮助。

这里是我的AppTheme

<style name="AppTheme" parent="Theme.AppCompat"> 
    <item name="colorPrimary">@color/primary</item> 
    <item name="colorPrimaryDark">@color/primary_dark</item> 
    <item name="colorAccent">@color/primary</item> 
    <item name="android:textColorHint">@color/primary_text</item> 
    <item name="android:windowBackground">@null</item> 
    <item name="android:windowSoftInputMode">stateHidden|adjustPan</item> 
</style> 

任何事情,我在这里失踪?

感谢, Otterman

编辑:提示是正确的颜色,当现场不具有焦点。当字段收到焦点时,提示会移到字段上方并显示不正确的颜色。

+1

检查这个https://stackoverflow.com/a/30914037/985143 –

回答

0

我能得到这个加

成功运行

要我TextInputLayout

这里是正确的样式

<style name="EditTextHintStyle" parent="EditTextBaseStyle"> 
    <item name="android:textColor">@color/warm_grey</item> 
</style> 
+0

我得到了一个父=“EditTextBaseStyle”错误 –

0

您是否也尝试过AppTheme这些属性?

<item name="colorControlNormal">@color/primary</item> 
<item name="colorControlHighlight">@color/warm_grey</item>  
<item name="colorControlActivated">@color/warm_grey</item> 

或移动

android:textColorHint="@color/warm_grey" 

形式的XML小部件EditTextBaseStyle

+0

是的,那些都工作,以及 – Otterman

0

试试这个:

<style name="AppTheme.EditTextBaseStyle" parent="@android:style/TextAppearance"> 
    <item name="android:textColor">@android:color/darker_gray</item> 
</style>