我需要隐藏软键盘以响应单击按钮。 我看到了一些关于这个的帖子,我尝试了:
InputMethodManager im = (InputMethodManager) getSystemService(
Context.INPUT_METHOD_SERVICE);
im.hideSoftInputFromWindow(myEditText1.getWindowToken(), 0);
效果很好。但现在我有两个EditText视图。无论选择哪种EditText,我现在如何隐藏软键盘?我也尝试了
InputMethodManager im = (InputMethodManager) getSystemService(
Context.INPUT_METHOD_SERVICE);
im.hideSoftInputFromWindow(myEditText1.getWindowToken(), 0);
im.hideSoftInputFromWindow(myEditText2.getWindowToken(), 0);
,但这没效果......
感谢您的帮助!
修改 找到解决方案发表于以下。
答案 0 :(得分:6)
您无需指出具体视图。在使用它并工作:)
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
答案 1 :(得分:2)
解决方案是不从EditText获取窗口令牌,而是从隐藏键盘本身的按钮获取窗口令牌:
InputMethodManager im = (InputMethodManager) getSystemService(
Context.INPUT_METHOD_SERVICE);
im.hideSoftInputFromWindow(hideKeyboardButton.getWindowToken(), 0);
答案 2 :(得分:0)
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
你可以"玩"用参数来实现你想要的任何东西。 希望这有帮助!