How to dismiss keyboard in Android SearchView?

后端 未结 15 1388
萌比男神i
萌比男神i 2020-12-05 06:27

I have a searchView in the ActionBar. I want to dismiss the keyboard when the user is done with input. I have the following queryTextListener on the searchView



        
15条回答
  •  不思量自难忘°
    2020-12-05 06:34

    Below Code is working for me to hide keyboard in Searchview

    MenuItem searchItem = baseMenu.findItem(R.id.menuSearch);
    
    edtSearch= (EditText) searchItem.getActionView().findViewById(R.id.search_src_text);
    
    MenuItemCompat.setOnActionExpandListener(searchItem, new MenuItemCompat.OnActionExpandListener() {
                            @Override
                            public boolean onMenuItemActionExpand(MenuItem item) {
                                edtSearch.post(new Runnable() {
                                    @Override
                                    public void run() {
                                        InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                                        imm.hideSoftInputFromWindow(searchEditText.getWindowToken(), 0);
                                    }
                                });
                                return true;
                            }
    
                            @Override
                            public boolean onMenuItemActionCollapse(MenuItem item) {
                                return true;
                            }
                        });
    

提交回复
热议问题