【问题标题】:android - Change color of floating label in TextInputLayoutandroid - 更改 TextInputLayout 中浮动标签的颜色
【发布时间】:2016-07-26 01:50:50
【问题描述】:

我尝试使用TextInputLayout,我按照post成功更改了浮动标签的颜色,使用android:theme="@style/TextLabel"使浮动标签颜色发生了变化。但是,它仅适用于 Android 5.0 及更高版本。

对于较低版本的 Android,我使用app:hintTextAppearance="@style/TextAppearance.AppCompat"。这是我的代码:

<style name="EditTextHint" parent="TextAppearance.AppCompat">
    <item name="android:textColor">#bbbbc9</item>
    <item name="android:textColorHint">#bbbbc9</item>
    <item name="android:textSize">11.5sp</item>
</style>

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

        <EditText
            android:id="@+id/fet_input_left"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@android:color/transparent"
            android:paddingTop="7.5dp"
            android:textColor="#595968"
            android:textSize="14sp" />
</android.support.design.widget.TextInputLayout>

问题是浮动标签的颜色仅在用户在 EditText 上的选项卡上更改为#bbbbc9。如果其他 EditText 上的用户选项卡,颜色将更改为默认值。这是图片:


正确颜色:bbbbc9


错误颜色lt:默认颜色

如果您有任何建议,请告诉我。任何想法将不胜感激。

提前谢谢你!

【问题讨论】:

标签: android android-edittext android-theme android-styles android-textinputlayout


【解决方案1】:

在“即时”完成后,我尝试在 TextInputLayout 中添加 android:textColorHint="#bbbbc9" 并且它可以工作。完整代码如下:

<style name="EditTextHint" parent="TextAppearance.AppCompat">
    <item name="android:textColor">#bbbbc9</item>
    <item name="android:textColorHint">#bbbbc9</item>
    <item name="android:textSize">11.5sp</item>
</style>

<android.support.design.widget.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textColotHint="#bbbbc9"
    app:hintTextAppearance="@style/EditTextHint">

    <EditText
        android:id="@+id/fet_input_left"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@android:color/transparent"
        android:paddingTop="7.5dp"
        android:textColor="#595968"
        android:textSize="14sp" />
</android.support.design.widget.TextInputLayout>

【讨论】:

    【解决方案2】:

    你有打开两个style.xml吗?一个是 style.xml 而另一个是 style-21.xml ? 在style-21.xml中,用于android-21 / android 5.0 或以上 原来的支持较低

    【讨论】:

    【解决方案3】:

    这对我有用; 将自定义样式设为;

    <style name="TextFloatLabelAppearance" parent="TextAppearance.Design.Hint">
            <!-- Floating label appearance here -->
            <item name="android:textColor">@color/colorLightGrey</item>
    
        </style>
    

    并使用;

    <android.support.design.widget.TextInputLayout
                            android:id="@+id/store_til"
                            app:hintTextAppearance="@style/TextFloatLabelAppearance"
                            android:textColorHint="@color/colorWhite"
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content">
                            <AutoCompleteTextView
                                android:id="@+id/editText"
                                android:layout_width="match_parent"
                                android:layout_height="wrap_content"
                                android:textColor="@color/colorWhite"
                                android:hint="@string/your_string">
                            </AutoCompleteTextView>
    

    这就是我将浮动文本更改为自定义颜色的方法。

    【讨论】:

      猜你喜欢
      • 2015-08-13
      • 1970-01-01
      • 2020-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-27
      • 1970-01-01
      相关资源
      最近更新 更多