I've tried the Android documentation method and some answers from StackOverflow. Actually, it works well when I use SearchView
, not in ActionBar
menu. Here is code.
styles.xml
<style name="AppTheme.SearchView" parent="Widget.AppCompat.SearchView">
<item name="searchIcon">@drawable/ic_icon_1</item>
<item name="closeIcon">@drawable/ic_icon_2</item>
</style>
<style name="AppTheme" parent="Theme.AppCompat.Light">
<item name="searchViewStyle">@style/AppTheme.SearchView</item>
</style>
my_menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/item_search"
android:title="@string/search"
app:actionViewClass="android.support.v7.widget.SearchView"
app:showAsAction="always"/>
</menu>
I also tried to set searchViewStyle
field in ActionBar
's style but again no result.
答案 0 :(得分:0)
我建议您看看我在此处给出的用来设置自己的SearchBar样式的答案。
我不知道原因,但无法为Google的默认SearchBar设置样式,因此必须创建自己的Search bar。
这是我的做法:
Android上的样式搜索视图(min21)- Styling Search View on Android (min21)
如果您想实现InstantSearch算法,请遵循这位出色的作者及其项目(查看接受的答案):
如何使用SearchView过滤RecyclerView- How to filter a RecyclerView with a SearchView
如果您需要进一步的帮助,请发表评论。如果答案有帮助,也可以提高我的答案:P
更新:这是Google对搜索视图的实现,只是为了向您提供更多信息:https://developer.android.com/guide/topics/search/search-dialog.html
祝你有美好的一天:)