2010-08-13 3 views
20

У меня есть 3 autocompletetextview, в котором я установил его адаптер как ArrayAdapter<String> с очень простым расположением textview.андроид autocompletetextview результаты поиска скрыты под клавиатурой

Результаты подсказки autocompletextview показываются, но находятся под экранной клавиатурой (я могу видеть ее часть). как я могу сделать результаты выше autocompletetextview, а не ниже?

airline = (AutoCompleteTextView)findViewById(R.id.airline); 
    airline.setAdapter(new ArrayAdapter<String>(this, R.layout.autcomplete_dropdown, AIRLINES_AUTOCOMPLETE_ARRAY)); 

    departLocation = (AutoCompleteTextView)findViewById(R.id.departLocation); 
    departLocation.setAdapter(new ArrayAdapter<String>(this, R.layout.autcomplete_dropdown, LOCATIONS_AUTOCOMPLETE_ARRAY)); 

    arriveLocation = (AutoCompleteTextView)findViewById(R.id.arriveLocation); 
    arriveLocation.setAdapter(new ArrayAdapter<String>(this, R.layout.autcomplete_dropdown, LOCATIONS_AUTOCOMPLETE_ARRAY)); 

ответ

1

вы должны посмотреть здесь: Creating an input method

Составляя текст перед совершением

Если IME делает текст предсказания или требует нескольких шагов, чтобы составить символ или слово, вы можете показать прогресс в тексте до тех пор, пока пользователь не зафиксирует слово, а затем вы можете заменить частичную композицию завершенным текстом. Вы можете дать специальное обращение к тексту, добавив к нему «span», когда вы передадите его в InputConnection # setComposingText().

Таким образом, предложения будут отображаться на мягкой клавиатуре, например, автокоррекции. Другой способ сделать это будет fullScreen IME ... с ExctractEditText: See this link...

Это то, что я обычно видел в других приложениях ... Я не думаю, что autocompletetextview может быть перевернуто и отображается поверх вид, но странно то, что он обычно показывает сверху клавиатуры, а не ниже ...

0

Добавить атрибут в вашей AndroidManifest.xml

андроида: windowSoftInputMode = "adjustPan | adjustResize"

Который будет автоматически изменить размер и настроить экранную клавиатуру.

3

Используйте ScrollView для макета, где находится ваш автозаполненный объект и Voila!

+2

, кажется, не работает на Android 6.0 –

1

У меня была такая же проблема с этим немного назад. Вы можете попытаться манипулировать z-индексом элементов, которые скрываются, чтобы заставить его на вершине, которые будут вашими взглядами в этом случае. Надеюсь, это сработает для вас!

-2

Возьмите текстовые изображения автозаполнения в соответствующих макетах, тогда вы увидите, что они открывают в нем свои значения (ВЫШЕ), задайте автозавершение texview (внизу) каждого макета, согласно вашему вопросу, вам понадобились три дочерних макета.

это действительно работает

0

Использование

android:windowSoftInputMode="adjustPan|adjustResize" 
Смежные вопросы