【问题标题】:How do I override/reset android EditText default colors?如何覆盖/重置 android EditText 默认颜色?
【发布时间】:2020-03-13 07:59:58
【问题描述】:

所以我使用了自定义配色方案,其中包含我自己的颜色。但问题是,虽然我设置了color_primary和color_secondary,但是当我拖入一个新的EditText视图时,下划线、文本颜色等还是默认的。
有没有办法设置我的颜色以便我的所有 EditText 视图都显示它们(而不是将每个视图都更改为一个。)?

是否有一个默认文件,按钮从中获取默认颜色值...我希望如果是这样,我可以自己更改该文件。

【问题讨论】:

    标签: android colors android-edittext


    【解决方案1】:

    您可以为 TextInutLayout 或 EditText 创建样式并将该样式应用于每个编辑文本。

    下面是TextInput布局的代码

    首先,为 EditText 创建一个通用样式

     <style name="TextInputFieldStyle" parent="Widget.Design.TextInputLayout">
        <item name="colorControlNormal">@color/colorSecondaryText</item>
        <item name="colorControlHighlight">@color/colorSecondary</item>
        <item name="colorControlActivated">@color/colorSecondary</item>
        <!--<item name="hintTextAppearance">@style/TextHintAppearance</item>-->
    </style>
    

    并应用样式:style="@style/TextInputFieldStyle"

      <com.google.android.material.textfield.TextInputLayout
                android:id="@+id/ifsc_til"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="16dp"
                android:hint="@string/name"
                style="@style/TextInputFieldStyle"
                android:textColorHint="@color/colorSecondaryText">
    
                <com.google.android.material.textfield.TextInputEditText
                    android:id="@+id/name"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:backgroundTint="@color/colorBlackAlpha20"
                    android:paddingBottom="@dimen/edit_text_padding_bottom"
                    android:inputType="textCapCharacters"
                    android:textAllCaps="true"
                    android:textColor="@color/colorPrimaryText"
                    tools:text="Full Name" />
            </com.google.android.material.textfield.TextInputLayout>
    

    【讨论】:

    • 是否有一个默认文件,按钮从中获取默认颜色值...我希望如果是这样,我可以自己更改该文件。
    • colorAccent 是 EditText 线条颜色的默认颜色。即,在 color.xml 中定义
    猜你喜欢
    • 1970-01-01
    • 2021-09-19
    • 1970-01-01
    • 2014-07-21
    • 1970-01-01
    • 2017-11-11
    • 2012-12-26
    • 2019-10-27
    • 1970-01-01
    相关资源
    最近更新 更多