我有一个带有 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/

10-13 04:53