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),所以我用它来获得关注点