我正在尝试自定义AutoCompleteTextView句柄背景。
当选择AutoCompleteTextView中的文本时,句柄是光标下的图标。
正如您在图像中看到的那样,当选择文本时,手柄背景(绿色水滴和光标下方的正方形)有一种我不知道它来自何处的颜色。
这是我正在做的方法:
style.xml
<style name="Autocomplete" parent="Widget.AppCompat.AutoCompleteTextView">
<item name="android:popupBackground">@android:color/transparent</item>
<item name="android:background">@color/text_black_color</item>
</style>
视图的
<AutoCompleteTextView
android:id="@+id/search"
android:theme="@style/Autocomplete"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:background="@android:color/transparent"
android:drawablePadding="@dimen/spacing_sm"
android:drawableStart="@drawable/ic_search"
android:hint="@string/search"
android:imeOptions="actionSearch"
android:inputType="text"
android:textColor="@color/white"
android:textColorHint="@color/colorTextSearch"
android:textSize="15.2sp"
tools:ignore="MissingPrefix" />
我希望能够让句柄背景变得透明。我有很多时间试图解决这个问题。
我希望至少有一种解决方法。
提前致谢。
答案 0 :(得分:2)
1)为了解决显示奇怪背景颜色的手柄背景(绿色滴和光标下方的正方形)的问题,你必须定义这样的样式:
<style name="AutocompleteStyle">
<item name="android:background">@android:color/transparent</item>
</style>
1)要更改AutoCompleteTextView的DropDownMenu背景颜色,您必须创建一个样式:
<style name="DropDownMenuBackground">
<item name="android:background">your_color</item>
</style>
并在AutocompleteStyle
中添加此行<item name="android:dropDownListViewStyle">@style/DropDownMenuBackground</item>
3)在AutoCompleteTextView中添加此行以避免其原生样式:
android:background="@android:color/transparent"
现在完整的style.xml如何显示:
<style name="AutocompleteStyle">
<item name="android:background">@android:color/transparent</item>
<item name="android:dropDownListViewStyle">@style/DropDownMenuBackground</item>
</style>
<style name="DropDownMenuBackground">
<item name="android:background">@color/colorSearch</item>
</style>
显然,不要忘记将您的风格添加到autocompletetextview:
<AutoCompleteTextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/transparent"
android:imeOptions="actionSearch"
android:theme="@style/AutocompleteStyle"
/>
答案 1 :(得分:0)
试试这个
<style name="Autocomplete" parent="Widget.AppCompat.AutoCompleteTextView">
<item name="android:background">@android:color/transparent</item>
</style>
<AutoCompleteTextView
android:id="@+id/search"
android:theme="@style/Autocomplete"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:background="@android:color/transparent"
android:drawablePadding="@dimen/spacing_sm"
android:drawableStart="@drawable/ic_search"
android:hint="@string/search"
android:imeOptions="actionSearch"
android:inputType="text"
android:textColor="@color/white"
android:textColorHint="@color/colorTextSearch"
android:textSize="15.2sp"
tools:ignore="MissingPrefix" />
答案 2 :(得分:0)
尝试此属性“android:textSelectHandle”
答案 3 :(得分:0)
您可以创建自己的 仅适用于此EditText的样式/主题并更改ColorAccent:
<style name="EditTextColorCustom" parent="@style/AppBaseTheme">
<!-- Customize your theme here. -->
<item name="colorAccent">@color/colorAccent</item>
</style>