我有一个带有 SearchView 的 ActionBar。选择菜单按钮时,隐藏/溢出菜单项显示在下拉列表中的右侧。当下拉菜单隐藏时,SearchView 会聚焦并显示键盘。有没有办法阻止键盘显示(除了触摸 SearchView 的情况)?
问候,
朱利叶斯。
编辑下面添加的代码:
这是我初始化它的方式:
SearchManager searchManager = (SearchManager) mActivity.getSystemService(Context.SEARCH_SERVICE);
((SearchView) mSearchView).setSearchableInfo(searchManager.getSearchableInfo(mActivity.getComponentName()));
mSearchView.setIconifiedByDefault(mIconified);
mSearchView.setOnQueryTextListener(this);
mSearchView.setOnCloseListener(this);
mSearchView.setFocusable(false);
mSearchView.setFocusableInTouchMode(false);
if(null!=mQuery)
mSearchView.setQuery(mQuery, false);
编辑2:
当用户想要开始搜索时,我会这样做:
@Override
public boolean onQueryTextSubmit(String query) {
// Hide keyboard
InputMethodManager imm = (InputMethodManager) mActivity.getSystemService(
FragmentActivity.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(mSearchView.getWindowToken(), 0);
...
mSearchView.setFocusable(false);
mSearchView.setFocusableInTouchMode(false);
return true;
}
最佳答案
初始化时尝试在 SearchView 上调用 setFocusable(false) 。
关于android - SearchView 在隐藏 ActionBar 菜单时聚焦,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7604927/