如何在展开SearchView小部件时更改左侧显示的应用程序图标?
这是我的onCreateOptionsMenu()代码:
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
final TextView tv = (TextView)findViewById(R.id.textView);
SearchView searchView = (SearchView)menu.findItem(R.id.menu_search).getActionView();
searchView.setQueryHint("Search");
return super.onCreateOptionsMenu(menu);
}
我在searchM小部件的xml中有以下内容:
<item android:id="@+id/menu_search" android:title="search"
android:showAsAction="ifRoom|collapseActionView"
android:actionViewClass="android.widget.SearchView" />
我还浏览了默认情况下膨胀的search_view.xml(https://github.com/android/platform_frameworks_base/blob/master/core/res/res/layout/search_view.xml#L75),以检查我是否可以从那里获取元素然后更改图像。但我在这个xml中找不到任何负责折叠搜索视图小部件的元素。
答案 0 :(得分:0)
试试这个:
SearchView searchView = new SearchView(getContext());
OptionCommand searchCommand = new OptionCommand();
searchCommand.setActionView(searchView);
searchCommand.setIcon(getResources().getDrawable(android.R.drawable.ic_menu_search));
searchCommand.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
searchView.setBackgroundColor(Color.WHITE);