单击时如何更改textInputlayout的颜色

时间:2019-03-02 10:47:39

标签: android

我有一个textInputLayout,它使用主题的colorPrimaryDark,但是在点按时,行和提示文本更改为我要更改的主题的colorPrimary

This is before the textInputLayout is tapped \

And this is after its tapped

XML代码

<android.support.design.widget.TextInputLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <EditText
            android:id="@+id/email"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="@string/email"
            android:inputType="textEmailAddress"
            android:maxLines="1"
            android:singleLine="true" />

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

样式代码

<style name="StyledEditText">

    <item name="android:imeOptions">actionNone</item>
    <item name="android:colorControlActivated">@color/colorPrimaryDark</item>
    <item name="android:textColorPrimary">@color/colorPrimaryDark</item>
    <item name="android:colorControlHighlight">@color/colorPrimaryDark</item>
</style>

2 个答案:

答案 0 :(得分:0)

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

    <EditText
        android:id="@+id/email"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="@string/email"
        android:inputType="textEmailAddress"
        android:maxLines="1"
        android:singleLine="true" />

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

在代码中添加以下样式 TextLabel

 <style name="TextLabel" parent="Widget.Design.TextInputLayout">
    <item name="android:textColorHint">@android:color/holo_red_dark</item>
    <item name="android:textColor">#ff000000</item>
    <item name="colorAccent">@android:color/holo_green_dark</item>
    <item name="colorControlNormal">@android:color/holo_purple</item>
    <item name="colorControlActivated">@android:color/holo_blue_bright</item>
</style>

colorControlActivated设置焦点时的编辑文本字段的颜色。当字段未聚焦时,colorControlNormal是默认颜色。

答案 1 :(得分:0)

第一种方式

它与您的 <div class="card" :style="{ background: 'url(' + require(image) + ')',}"> export default { data() { return { image: "./assets/dance.jpg", }; } }; 颜色同步

您可以将colorAccent更改为所需的任何颜色。

第二种方式:

您可以按照自己的样式自定义colorAccent`,然后像这样在textInputLayout中使用它:

colorAccent