1
Good afternoon guys again asking for help. I wonder how to pick up the event from the OK button on the keyboard. Example if I have a login and want to click ok it has the same effect as the login button of my application.
1
Good afternoon guys again asking for help. I wonder how to pick up the event from the OK button on the keyboard. Example if I have a login and want to click ok it has the same effect as the login button of my application.
6
I usually do it that way:
<EditText
// Demais atributos do seu EditText
android:maxLines="1"
android:lines="1"
android:inputType="textImeMultiLine"
android:imeActionLabel="@string/pronto"
android:imeOptions="actionDone" />
Being:
maxLines and lines being 1, because otherwise it could override the line break button, so it can only have one line.imeOptions the Ok/Done button code (On Kindle Fire they say it is actionGo, then I would have to change the check of the actionId for EditorInfo.IME_ACTION_GO).inputType needs to be textImeMultiline.imeActionLabel the text that appears on the button.In his Activity or Fragment, the treatment of the event should be in this way:
EditText edit = findViewById(...);
edit.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if(event != null && KeyEvent.KEYCODE_ENTER == event.getKeyCode() || actionId == EditorInfo.IME_ACTION_DONE) {
confirmAction();
}
return false;
}
});
Just one observation, it seems to me that by own experience this code only works for the standard keyboard of Google and of Android. I couldn’t get it to work on Swiftkey for example, they say that third-party appliances do not respect the Ime Action.
Browser other questions tagged android keyboard
You are not signed in. Login or sign up in order to post.