Android TextField : set focus + soft input programmatically

android, android-edittext

Solution

Good sir, try this:

edittext.setFocusableInTouchMode(true);
edittext.requestFocus();

I'm not sure, but this might be required on some phones (some of the older devices):

final InputMethodManager inputMethodManager = (InputMethodManager) context
                .getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.showSoftInput(edittext, InputMethodManager.SHOW_IMPLICIT);

Problem

In my view, I have a search EditText and I would like to trigger programmatically the behaviour of a click event on the field, i.e give focus to the text field AND display soft keyboard if necessary (if no hard keyboard available). I tried `field.requestFocus()`. The field actually gets focus but soft keyboard is not displayed. I tried `field.performClick()`. But that only calls the OnClickListener of the field. Any idea ?

Original source