使用后退按钮重置操作栏搜索

时间:2013-07-15 10:12:23

标签: android

我有操作栏搜索菜单。当我点击搜索图标时,会显示聚焦和软键盘。我想使用onBackPressed事件重置搜索。当我第一次按回按钮时,软键盘会隐藏。我再次按下按钮,搜索视图将被重置并折叠。

我试过这种方式却失败了

@Override
    public void onBackPressed() {
        // It's expensive, if running turn it off.
       // DataHelper.cancelSearch();
        hideKeyboard();
        super.onBackPressed();
    }
    private void hideKeyboard() {
        InputMethodManager imm = (InputMethodManager) 
            getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(mSearchView.getWindowToken(), 0);
    }

我的代码隐藏了键盘,但当我再次按下后退按钮时,它会导航到以前的意图。

1 个答案:

答案 0 :(得分:0)

停止调用super方法,然后您将无法导航到上一个活动,只有软键盘才会隐藏。

    @Override
    public void onBackPressed() {
        // It's expensive, if running turn it off.
       // DataHelper.cancelSearch();
        hideKeyboard();
        //super.onBackPressed();
    }

现在你可以做任何你想做的事。