我创建了活动扩展ListActivity。 在Actionbar中,我添加了操作栏搜索视图。
<item android:id="@+id/menu_search"
android:layout_centerInParent="true"
android:title="Search"
android:icon="@drawable/ic_action_search"
app:showAsAction="always|collapseActionView|withText"
app:actionViewClass="android.support.v7.widget.SearchView" />
它工作正常,但我的问题是我找不到方法
中的搜索视图public boolean onCreateOptionsMenu(Menu menu) {
....
// SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView();
SearchView searchView = (SearchView) MenuItemCompat.getActionView(menu.findItem(R.id.menu_search));
&#34;搜索查看&#34;总是返回null。
但如果我用这个
android:actionViewClass="android.widget.SearchView
它工作正常。
我的要求是我必须使用MenuItemCompat并在同一活动中捕获onQueryTextSubmit事件而不是可搜索的活动。
提前致谢。
答案 0 :(得分:0)
试试此代码
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
searchView = (SearchView) menu.findItem(R.id.search_user)
.getActionView();
searchView.setSearchableInfo(searchManager
.getSearchableInfo(getComponentName()));
@Override
public boolean onQueryTextSubmit(final String query) {
-------
}