Over a million developers have joined DZone.

Hiding the Soft-Keyboard on Android

DZone's Guide to

Hiding the Soft-Keyboard on Android

· Mobile Zone
Free Resource

Launching an app doesn’t need to be daunting. Whether you’re just getting started or need a refresher on mobile app testing best practices, this guide is your resource! Brought to you in partnership with Perfecto

Sometimes you just want to do a simple task, such as hide the on-screen keyboard. In Android there is an easy way to do that. You just need a View thats currently inside the Activity and you can utilize the InputMethodManager to hide it.

It can also be nice to hide the keyboard from the Android manifest. I'll explain that as well.

Here is a quick way to hide the keyboard from Java:

Hide from Java

1. Find a View thats currently in the Activity. (Lets give it id: myView)

View v = findViewById(R.id.myView);

2. Then you can use this view to find the corresponding WindowToken. And then we can close the keyboard with these 2 lines

InputMethodManager imm = (InputMethodManager)this.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(fEmail.getWindowToken(), 0);

3. You can also use this in any OnClickListener but you will have to make a reference to the Context of the Activity:

this.getSystemService will become YourActivityClassName.this.getSystemService

Hide from AndroidManifest.xml

And this can be used to hide your keyboard on launch of your Activity.

android:configChanges="keyboardHidden"  />

Pretty easy, aint it :)

Source: http://p-xr.com/android-quick-win-hide-the-soft-keyboard-on-button-press-or-from-androidmanifest-xml/

Keep up with the latest DevTest Jargon with the latest Mobile DevTest Dictionary. Brought to you in partnership with Perfecto.


Opinions expressed by DZone contributors are their own.


Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.


{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}