我有一个包含EditText的碎片。当我点击EditText时,键盘弹出。问题是当我打开抽屉时,抽屉不能隐藏键盘。即使我切换到另一个碎片,键盘仍然显示。如何在打开抽屉时隐藏键盘。
我尝试过放置
InputMethodManager imm =
(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getWindowToken(), 0);
和
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
两者都不会隐藏键盘。
Fragments
(位于NavigationDrawer
或ViewPager
中)时,经常遇到从EditText
获取WindowToken
的问题。我所缺少的是Activity.getCurrentFocus()
。非常感谢。 - shkschneider