用户在SearchView上完成查询后隐藏键盘

您好,我无法弄清楚如何隐藏搜索查询后的Android虚拟键盘搜索视图。 当用户按下返回键时,我希望键盘消失(理想情况下,当他们点击键盘外的任何地方,但我现在将决定返回键)。 我有它使用onQueryTextSubmit工作的查询工作:

public boolean onQueryTextSubmit(String s) {
        //Search stuff...
        searchView.clearFocus();
        return true;
    }

但是,如果查询是空字符串,我希望它也可以工作。 问题是如果它是一个空字符串,则不会触发QueryTextSubmit:Android SearchView.OnQueryTextListener OnQueryTextSubmit不会在空查询字符串上触发

我也不想使用ActionBarSherlock,所以这个解决方案不会这样做:Android SearchView空字符串

我只是想在用户搜索后隐藏键盘:(看起来像这样一个简单的问题,但让我头痛。有什么建议吗?谢谢!


如果您正在使用兼容性库:

MenuItemCompat.collapseActionView(searchItem);//searchItem is an instance of MenuItem

如果您没有使用兼容性库:

searchItem.collapseActionView();

使用InputMethodManager:

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);

为空查询字符串解决方案:Android SearchView.OnQueryTextListener OnQueryTextSubmit不会触发空查询字符串


这工作:

searchView.setQuery("", false);
searchView.setIconified(true);
链接地址: http://www.djcxy.com/p/92957.html

上一篇: Hide the keyboard after a user finishes a query on a SearchView

下一篇: Android abs with SearchView, onQueryTextListener not working