AutocompleteTextView: в «NEXT» выделите следующий TextView, в «DONE», чтобы клавиатура исчезла - PullRequest
33 голосов
/ 01 мая 2010

У меня есть два AutocompleTextViews, и я хочу переключиться на следующее, если пользователь нажимает «NEXT», и заставить виртуальную клавиатуру исчезать, когда он нажимает «DONE» во втором AutocompleTextView. До сих пор кнопки «NEXT» / «DONE» вообще ничего не делают .... К сожалению, я не нашел ресурсов для решения этой проблемы.

Есть предложения? ТНХ

РЕДАКТИРОВАТЬ: Просто хочу добавить, что это спрашивалось, когда Android был на версии 2.3 или что-то подобное.

Ответы [ 4 ]

89 голосов
/ 18 декабря 2011

Я столкнулся с этой проблемой и исправил ее, установив imeOptions в AutocompleteTextView в actionNext.

Пример:

<AutoCompleteTextView
    android:id="@+id/dialog_product_name"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:singleLine="true"
    android:completionThreshold="1"
    android:imeOptions="actionNext"
    />
3 голосов
/ 09 мая 2011

Я нашел это решение для «СЛЕДУЮЩЕЙ» проблемы: в исходном коде View напишите что-то вроде этого

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_ENTER) {
    if (firstAutoComplete.hasFocus()) {
    // sends focus to another field (user pressed "Next")
    otherText.requestFocus();
    return true;
    }
    else if (secondAutoComplete.hasFocus()) {
            // sends focus to another field (user pressed "Next")
    anotherText.requestFocus();
    return true;
    }
}
return false;
}

Кажется, это старый Android http://code.google.com/p/android/issues/detail?id=4208. Здесь я нашел свое решение: http://groups.google.com/group/android-developers/browse_thread/thread/e53e40bfe255ecaf.

0 голосов
/ 21 февраля 2018

Не забудьте добавить inputType = "text", иначе у вас будет кнопка ввода вместо следующей / готовой:

<AutoCompleteTextView
    android:id="@+id/suppliers"
    android:layout_width="@dimen/summary_input_width"
    android:layout_height="wrap_content"
    android:hint="@string/current_supplier"
    android:imeOptions="actionNext"
    android:inputType="text"
    android:lines="1" />
0 голосов
/ 15 января 2018

Просто добавьте эти две строки в AutoCompleteTextView xml Code:

            android:completionThreshold="1"
            android:imeOptions="actionNext"
...