Android: Hide soft input keyboard

I need to hide the soft keyboard in response to clicking a button. I saw some posts about this, and I tried it with:

InputMethodManager im = (InputMethodManager) getSystemService(
    Context.INPUT_METHOD_SERVICE);
im.hideSoftInputFromWindow(myEditText1.getWindowToken(), 0);

That worked well. But now I have two EditText views. How can I now hide the soft keyboard, no matter wich EditText is selected? I tried it also with

InputMethodManager im = (InputMethodManager) getSystemService(
    Context.INPUT_METHOD_SERVICE);
im.hideSoftInputFromWindow(myEditText1.getWindowToken(), 0);
im.hideSoftInputFromWindow(myEditText2.getWindowToken(), 0);

, but that didn't worked...

Thanks for your help!

EDIT: Found solution. Posted below.


Simply you dont need to point specific view. Im using this and works :)

InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
    inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);

一个解决方案是不从EditText获取窗口标记,但是从这个窗口隐藏键盘本身:

InputMethodManager im = (InputMethodManager) getSystemService(
    Context.INPUT_METHOD_SERVICE);
im.hideSoftInputFromWindow(hideKeyboardButton.getWindowToken(), 0);

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

You can "play" with the parameter to achieve whatever you want. Hope this helped!

链接地址: http://www.djcxy.com/p/16684.html

上一篇: 在哪里使用mysql

下一篇: Android:隐藏软输入键盘