Android 在操作栏中切换选项卡时隐藏键盘

Android 在操作栏中切换选项卡时隐藏键盘,android,android-actionbar,Android,Android Actionbar,我曾经使用TabHost设置我的选项卡,但按照人们的建议,我使用ActionBar.Tab重写了我的代码。在我的旧版本代码中,我通过以下方式在切换选项卡时隐藏了键盘: // Hide Keyboard when changing tab th.setOnTabChangedListener(new TabHost.OnTabChangeListener() { @Override public void onTabChanged(String tabId)

我曾经使用
TabHost
设置我的选项卡,但按照人们的建议,我使用
ActionBar.Tab
重写了我的代码。在我的旧版本代码中,我通过以下方式在切换选项卡时隐藏了键盘:

// Hide Keyboard when changing tab
    th.setOnTabChangedListener(new TabHost.OnTabChangeListener() {
        @Override
        public void onTabChanged(String tabId) {
            InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
            switch (th.getCurrentTab()) {
            case 0:
                imm.hideSoftInputFromWindow(tab1.getWindowToken(), 0);
                break;
            case 2:
                imm.hideSoftInputFromWindow(tab1.getWindowToken(), 0);
                break;
            }
        }
    });
我尝试使用类似的方法,但我不知道如何为我的
ActionBar.Tab
获取WindowToken。有什么建议吗

if(mActivity.getCurrentFocus() != null) {
        InputMethodManager imm = (InputMethodManager)mActivity.getSystemService(
                Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(mActivity.getCurrentFocus().getWindowToken(), 0);
    }
获取当前焦点,并使用该焦点获取窗口标记。我的听众正在传递一个片段和活动(mActivity),所以我用它来获得关注点