Кнопка Android Done вместо следующего

У меня проблема с клавиатурой. У меня есть ListView с текстами редактирования, и когда клавиатура открывается в первый раз, вместо кнопки "Далее" отображается кнопка "Готово". Проблема в том, что мне нужно использовать adjustResize в AndroidManifest.xml, и список перемещается вверх, когда отображается клавиатура, поэтому я думаю, что именно поэтому клавиатура работает неправильно. Но я не знаю, как я мог решить эту проблему. Если бы кто-нибудь мог мне помочь, я был бы очень благодарен.

Спасибо

Ответ 1

Добавьте android:imeOptions="actionDone" в поле, где вам нужна кнопка "Готово" на клавиатуре. Добавьте android:imeOptions="actionNext" в поле, где вам понадобится следующая кнопка.

Кроме того, у ime есть много опционных кнопок, таких как go, send, search и т.д.

Ответ 2

В вашем макете просто установите атрибуты XML android:imeOptions="actionNext" для ваших полей EditText, в которых вы хотите показать следующую кнопку, и android:imeOptions="actionDone" для последнего.

Чтобы получить фокус для вашего editText, выполните следующие действия:

your_editText.setOnEditorActionListener(new OnEditorActionListener() 
{
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) 
    {
        if (actionId == EditorInfo.IME_ACTION_NEXT) 
        {
            your_editText.requestfocus(true);
            return true;
        }
        return false;
    }
});