Take the 2-minute tour ×

I need to be able to hide the soft keyboard in response to clicking a button. I have seen numerous posts on this subject and it seems that the solution is to use the InputMethodManager, but I have been unable to get it to work for me. Supposedly the following will hide the soft keyboard:

  InputMethodManager inputManager = (InputMethodManager) 

  inputManager.hideSoftInputFromInputMethod(editView.getWindowToken(), 0);

However, this is not working for me (can any suggest why?), and even if it did, I want to be able to hide the keyboard regardless of what view has the input, and I may not know what view that is.

I found that the call:

inputManager.toggleSoftInput(0, 0);

will hide the keyboard if it is currently being shown. Unfortunately it will also show it if it is currently hidden. So for this to work for me, I would need a way to determine whether it is currently visible.

Any ideas?


share|improve this question

1 Answer 1

up vote 19 down vote accepted

You might want to try:

InputMethodManager inputManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
inputManager.hideSoftInputFromWindow(editView.getWindowToken(), 0);
share|improve this answer
Well, duh! I guess it would help if I called the correct function. Thanks. –  John Gaby Oct 4 '10 at 21:12

Your Answer


