【问题标题】:How to remove or change android EditText border bottom line color如何删除或更改android EditText边框底线颜色
【发布时间】:2021-11-09 15:31:42
【问题描述】:

我想更改/删除底线颜色。我提出了许多解决方案,我正在更改并删除背景表单 EditText 样式,但它没有任何作用。

<com.google.android.material.textfield.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/TextInput">

    <com.rengwuxian.materialedittext.MaterialEditText
        android:id="@+id/etMobileNumber"
        android:layout_width="fill_parent"
        android:layout_height="55dp"
        android:digits="0123456789"
        android:hint="@string/enter_receiver_phone_number"
        android:inputType="phone"
        android:maxLength="11"
        android:text=""
        android:textSize="18sp"
        style="@style/EditText">

    </com.rengwuxian.materialedittext.MaterialEditText>

</com.google.android.material.textfield.TextInputLayout>
<style name="TextInput">
    <item name="android:textColor">@color/input_text_color</item>
    <item name="android:textColorHint">@color/hint_text_color</item>
    <item name="android:textSize">11sp</item>
    <item name="colorControlNormal">@color/input_text_color</item>
    <item name="colorControlActivated">@color/hint_text_color</item>
    <item name="android:drawablePadding">20dp</item>
</style>

<style name="EditText">
    <item name="android:textSize">18sp</item>
    <item name="android:textStyle">normal</item>
    <item name="android:background">@drawable/edit_text_bottom_bar</item>
    <item name="android:textColor">@color/input_text_color</item>
</style>

【问题讨论】:

  • 在“EditText”样式中,添加这一行:background="null"
  • 几年前我写了a blog post 来讨论如何设计这些东西的样式。其中大部分仍然有效。

标签: android android-edittext


【解决方案1】:

试试这个:

android:background="@null"

【讨论】:

    【解决方案2】:

    在您的自定义主题中覆盖指向 EditText 样式(名为 editTextStyle :) )的属性:

    <style name="App_Theme" parent="@android:style/Theme.Holo">
       <item name="android:editTextStyle">@style/App_EditTextStyle</item>
    </style>
    

    并让您的自定义样式扩展 Widget.EditText:

    <style name="App_EditTextStyle" parent="@android:style/Widget.EditText">
        <item name="android:background">@drawable/filled_roundededges_box_dark</item>
        <item name="android:textColor">#808080</item>
        <item name="android:layout_height">45dip</item>
    </style>
    

    如果您使用的是更新的 AppCompat 相关主题,请使用不带 android 前缀的 editTextStyle 属性:

    <style name="App_Theme" parent="Theme.AppCompat.Light.DarkActionBar">
            <item name="editTextStyle">@style/App_EditTextStyle</item>
    </style>
    

    【讨论】:

      【解决方案3】:

      以编程方式更改editText底线颜色非常简单, 通过在您的活动类中添加这一行:

      editText.backgroundTintList = ColorStateList.valueOf(yourColor)

      【讨论】:

        猜你喜欢
        • 2019-10-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-08-03
        • 1970-01-01
        相关资源
        最近更新 更多