我在扩展搜索栏时尝试更改搜索视图的下划线颜色
SearchView.SearchAutoComplete autoCompleteTextView = (SearchView.SearchAutoComplete) searchView.findViewById(R.id.search_src_text);
autoCompleteTextView.setCursorVisible(true);
autoCompleteTextView.setTextColor(ContextCompat.getColor(this, R.color.textcolor_light_gray));
autoCompleteTextView.setHintTextColor(autoCompleteTextView.getTextColors().withAlpha(255));
autoCompleteTextView.setTextSize(16);
View searchplate = (View)searchView.findViewById(android.support.v7.appcompat.R.id.search_plate);
searchplate.setBackgroundResource(R.drawable.autocomplete_bg);
这里我用主题来改变颜色
<style name="MySearchViewStyle" parent="Widget.AppCompat.Light.SearchView">
<!-- Background for the search query section (e.g. EditText) -->
<item name="queryBackground">@color/darkgray</item>
</style>
但没有任何对我有用。任何人帮助我...
答案 0 :(得分:6)
最后我得到了解决方案..
ComboBox
答案 1 :(得分:1)
您也可以通过xml更改它:
<item name="android:queryBackground">...</item>
我猜你忘记了android:
前缀
答案 2 :(得分:0)
以下示例对我有用,我希望它也适用于您。
<SearchView
android:id="@+id/search_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:iconifiedByDefault="false"
android:gravity="center"
android:background="@drawable/bg_searchview"
android:queryBackground="@drawable/bg_searchview_query"/>
android:queryBackground="@drawable/bg_searchview_query"
在 drawable 中,创建 .xml 文件 bg_searchview 作为背景
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android">
<padding
android:top="10dp"
android:bottom="10dp" />
<solid android:color="#FFFFFF" />
<corners android:radius="20dp"/>
<stroke
android:width="0.3dp"
android:color="#797979" />
</shape>
在drawable中,为queryBackground创建一个.xml文件bg_searchview_query
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF" />
<corners android:radius="20dp"/>
</shape>