如何更改 TextInputLayout 的 Android Floating Label 的默认颜色?

How to change default color of Android Floating Label for TextInputLayout?

我能够更改包装 EditText 的 TextInputLayout 的浮动标签的颜色。当它在动画阶段使用下面的代码漂浮时,我可以使用 "android:textColor" select 黑色(默认为白色)。当 EditText 失去焦点时,我试图 select 一种不同的颜色——这意味着当浮动标签在 EditText 上方永久存在时。我的最小API是14,请指教。

部分themes.xml文件:

<?xml version="1.0" encoding="utf-8"?>

<style name="AppTheme" parent="AppTheme.Base"/>

<style name="AppTheme.Base" parent="Theme.AppCompat.NoActionBar" >
...
</style>

<style name="FloatingLabel" parent="@android:style/TextAppearance" >
    <item name="android:textColor">#000000</item>
</style>

部分layout.xml文件:

...
<android.support.design.widget.TextInputLayout
    android:id="@+id/ToDo_text_input_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:hintTextAppearance="@style/FloatingLabel"
    >
...

在样式中添加:

<style name="TextAppearence.App.TextInputLayout" parent="@android:style/TextAppearance">
    <item name="android:textColor">@color/red</item>
    <item name="android:textSize">14sp</item>
</style>

将此添加到您的布局中:

<android.support.design.widget.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textColorHint="@color/gray"
   **app:hintTextAppearance="@style/TextAppearence.App.TextInputLayout"**>

    <android.support.v7.widget.AppCompatEditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/hint" />
</android.support.design.widget.TextInputLayout>