1.设置SearchView的动作类
<item
android:id="@+id/action_search"
android:title="搜索"
android:icon="@drawable/ic_action_search"
app:showAsAction="always|collapseActionView"
app:actionViewClass="android.support.v7.widget.SearchView"
/>
2.加载OptionsMenu时点击动作,将View转换成对应的View
getMenuInflater().inflate(R.menu.search_menu, menu);
// 设置搜索输入框的步骤
// 1. 查找指定的MenuItem
MenuItem item = menu.findItem(R.id.action_search);
//// 2. 设置SearchView V4包方式
//View view = SearchViewCompat.newSearchView(this);
////item.setActionView(view);
//MenuItemCompat.setActionView(item, view);
// 3. v7包设置SearchView的方式
View view = MenuItemCompat.getActionView(item);
if(view != null){
mSearchView = (SearchView) view;
// 4. 设置 SearchView的查询回调接口
mSearchView.setOnQueryTextListener(this);
// 在搜索输入框没有显示的时候,点击Action,回调这个接口,并且显示输入框
//searchView.setOnSearchClickListener();
// 当自动补全的 内容被选中的时候,回调接口
//searchView.setOnSuggestionListener();
// 可以设置搜索的自动补全,或者实现搜索历史
//mSearchView.setSuggestionsAdapter();
}
return true;
网友评论