I have an layout with 5 Edit texts and 3 radio buttons and two button..After 5 edit texts I have 3 radio buttons and after that 2 buttons. After enter the text in fifth edit text I am unable to see radio buttons and normal buttons due to soft keyboard. How can I disable that soft keyboard after enter the fifth edit text? Can any one please help me out of this problem...
5 Answers
Try the following code snippet to hide/close the soft keyboard
getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN
);

- 1,375
- 11
- 18
-
It hides soft keyboard after enter the text in last edit tetx? I applied InputMethodManager imm = (InputMethodManager)getSystemService( Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFromWindow(country.getWindowToken(), 0); code for last edit text value – yamuna Jan 02 '15 at 10:05
public void hideKeyBord(View view) {
if (view != null) {
if (keyBoardHide == null) {
keyBoardHide = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
}
if (keyBoardHide != null && keyBoardHide.isActive()) {
// to hide keyboard
keyBoardHide.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
}
}

- 366
- 5
- 16
InputMethodManager inputManager = (InputMethodManager)
getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.hideSoftInputFromWindow(getActivity().getCurrentFocus().getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

- 649
- 10
- 22
Simply use :
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
whenever you want to hide the soft keyboard.
In your case :
Let your fifth EditText
be et
..
Then use :
if(!et.toString().equals(null)){
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
}
OR
You can detect if the fifth EditText
was focused
or not and then acting accordingly(i.e Hiding the keyboard using the method above if the EditText
was focused
) by following the link below:
How can I detect focused EditText in android?
OR
Detect Done
key event on soft keyboard :
The keyboard would automatically close when DONE
button is pressed. But if you want to perform customs actions when DONE
button is pressed, refer below :
et= (EditText) findViewById(R.id.edit_text);
et.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {
// do your stuff here
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
}
return false;
}
});
Hope this Helps!
-
-
1
-
Actually in some mobiles in soft keyboard there is a key button Done after all values entered – yamuna Jan 02 '15 at 10:27
-
Yeah you can detect the key event for done key. Follow the link below : http://stackoverflow.com/questions/5077425/android-detect-done-key-press-for-onscreen-keyboard @yamuna – gsanskar Jan 02 '15 at 10:29
-
I am getting confused my testing mobile had done key so after all values entered i can go with done button so it hides the soft keyboard so i have no problem with this. All mobiles will get done option? – yamuna Jan 02 '15 at 10:29
-
Updated my answer . Yeah all the edittexts will open a soft keyboard with DONE button, until and unless the EditText is single line. @yamuna – gsanskar Jan 02 '15 at 10:33
-
No.. I just want done button after the edit text values entered. I have that doubt only is all mobiles display done key? – yamuna Jan 02 '15 at 10:44
-
-
New Line button instead of done would be shown if your edittext is multiline – gsanskar Jan 02 '15 at 11:08
Hiding keyboard is not a big question ,but u need to confirm "when ?" you need to call
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edittext.getApplicationWindowToken(), 0);
for hiding softkeyboard
try to add android:imeOptions="actionNext"
in your edittext xml file and
edittext.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
boolean flag= false;
if (i == EditorInfo.IME_ACTION_NEXT) {
flag= true;
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edittext.getApplicationWindowToken(), 0);
}
return flag;
}
});
this code will hide your soft keyboard on click next in keyboard

- 1,994
- 1
- 13
- 12