更改 AutoCompleteTextView 下划线颜色

change AutoCompleteTextView underline color

我在通过样式更改 AutoCompleteTextView 的下划线颜色时遇到了一些问题。

我们正在使用 appcompat-v7,最低 SDK 版本为 16,目标和编译版本为 21。

这是我的工具栏:

<android.support.v7.widget.Toolbar
        xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/toolbar"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    style="@style/ToolbarTheme"
    android:minHeight="?attr/actionBarSize">

    <AutoCompleteTextView
        android:id="@+id/shop_chooser"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        style="@style/Autocomplete"
        android:hint="@string/chooseShop"
        android:imeOptions="actionSearch"
        android:inputType="textAutoComplete|textAutoCorrect"
        android:drawableRight="@drawable/ic_action_cancel"
        android:textIsSelectable="true" />

</android.support.v7.widget.Toolbar>

这是我将其包含在其他布局中的方式:

<include
        android:id="@+id/toolbar_inc"
        layout="@layout/actionbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

这是我的自动完成样式:

<style name="Autocomplete" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="android:textColor">#d9fafafa</item>
        <item name="android:textColorHint">#80bdbdbd</item>
        <item name="android:background">@drawable/bg_autocomplete</item>
    </style>

这是背景的 9 补丁图像:

我的问题是 AutoCompleteTextView 的位置低于应有的位置:

这是我从自定义样式中删除 'background' 属性后应用程序的外观:

我知道这可以在 api 21 上使用 'accentColor' 实现,但我在这里谈论的是 pre-21。

我只想更改线条的颜色,如有任何建议或替代解决方案,我们将不胜感激。谢谢!

问题出在你的 9.patch 图片上。它上面 space 太多了。

要么自己编辑,要么请图形设计师从顶部削掉一些 space。