My layout has 4 EditText views and a submit Button view. I need to have "Next" button for the first 3 EditText's and a "Done" button for 4th EditText field in place of a "New Line" key of soft keyboard.
How can this be done?
My layout has 4 EditText views and a submit Button view. I need to have "Next" button for the first 3 EditText's and a "Done" button for 4th EditText field in place of a "New Line" key of soft keyboard.
How can this be done?
In your layout, just set the XML attributes android:imeOptions="actionNext"
for your first three text boxes and android:imeOptions="actionDone"
for the last one.
See: android:imeOptions documentation
Also, there's a small XML example in the training docs.
to navigate the focus to the next edit field add
android:imeOptions="flagNavigateNext"
and for dismissing the softkey with done click add
android:imeOptions="actionDone"
on your layout :)
Add android:singleLine="true"
in your button xml
I think what you're looking for is something like this:
EditText nextText = new EditText(this)
{
@Override
public InputConnection onCreateInputConnection(final EditorInfo outAttrs)
{
outAttrs.imeOptions |= EditorInfo.IME_ACTION_NEXT;
return (super.onCreateInputConnection(outAttrs));
}
};
EditText doneText = new EditText(this)
{
@Override
public InputConnection onCreateInputConnection(final EditorInfo outAttrs)
{
outAttrs.imeOptions |= EditorInfo.IME_ACTION_DONE;
return (super.onCreateInputConnection(outAttrs));
}
};
It first one will take the user to the next field in the layout that accepts text. The second will close the IME (the soft keyboard).