Как отклонить клавиатуру в Android SearchView?

У меня есть searchView в ActionBar. Я хочу отклонить клавиатуру, когда пользователь закончил ввод. У меня есть следующий queryTextListener на searchView

final SearchView.OnQueryTextListener queryTextListener = new SearchView.OnQueryTextListener() { 
    @Override 
    public boolean onQueryTextChange(String newText) { 
        // Do something 
        return true; 
    } 

    @Override 
    public boolean onQueryTextSubmit(String query) {

        showProgress();
        // Do stuff, make async call

        getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

        return true; 
    } 
};

Исходя из аналогичных вопросов, следующий код должен отклонить клавиатуру, но в этом случае он не работает:

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

Я также попробовал:

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

Ни один из них не работает. Я не уверен, является ли это специфической проблемой Сота, или она связана с searchView в ActionBar, или с обоими. Кто-нибудь получил это работает или знает, почему это не работает?

Ответы на вопрос(12)

Ваш ответ на вопрос