Reputation: 16520
Is there any way to programmatically tell android to open the keyboard when the focus is obtained by an EditText?
Also is there any way to tell it to open the numeric keyboard?
Thanks Victor
Upvotes: 3
Views: 9510
Reputation: 6165
To pop up a numeric keyboard on start of the activity you can follow these steps:
Created edit text field in layout as: (Not needed if you want a qwerty keyboard)
<EditText
...
android:inputType="number"
... />
In function onCreate() show soft keyboard
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,0);
Most important is to give focus to edit text in onResume method.
@Override
public void onResume() {
super.onResume();
editText.setFocusableInTouchMode(true);
editText.requestFocus();
}
Upvotes: 9
Reputation: 15476
To show the keyboard:
InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.showSoftInput(viewToEdit, 0);
To hide the keyboard:
if (getCurrentFocus() != null) {
inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getApplicationWindowToken(), 0);
}
Upvotes: 5
Reputation: 8961
to make it numeric, use this
text.setInputType(InputType.TYPE_CLASS_NUMBER);
and as far as I know, the keyboard will pop up when needed automatically
Upvotes: 8