Android:SearchView组件更改图标(无ActionBar)

Android: SearchView component change icon (no ActionBar)

如何更改 SearchView 的默认搜索图标?

<SearchView
   android:id="@+id/searchView"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content" />

我没有使用 actionBar。可能吗?怎么样?

试试这个

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="searchViewStyle">@style/MySearchView</item>
</style>

<style name="MySearchView" parent="Widget.AppCompat.SearchView">
    <item name="searchIcon">@drawable/ic_search</item>
    <item name="closeIcon">@drawable/ic_close</item>
</style>

可以使用 AppCompat。

但我使用了小技巧:

mSearchView = (SearchView) searchViewMenuItem.getActionView();
int searchImgId = getResources().getIdentifier("android:id/search_button", null, null);
ImageView v = (ImageView) mSearchView.findViewById(searchImgId);
v.setImageResource(R.drawable.your_new_icon);  

从这个 How to change the default icon on the SearchView, to be use in the action bar on Android? 看起来还不错。