Перекрытие программной клавиатуры с полем EditText - PullRequest
8 голосов
/ 30 декабря 2010

Я нашел этот старый пост, который определенно помогает с моей проблемой, но я замечаю, что он, похоже, не решает мою проблему.Я понял, что мне нужно установить android: windowSoftInputMode = "AdjustPan" для моей деятельности.Но проблема в том, что он просто не выполняет панорамирование ENOUGH.

Текстовое поле направлено к нижней части представления, и когда клавиатура появляется, представление слегка смещается, но только в самый верх EditText.В текстовом поле включено автозаполнение, и когда оно начинает показывать параметры автозаполнения, представление немного уменьшается, но на самом деле оно еще больше скрывается параметрами автозаполнения.Это делает поле ввода текста очень трудным в использовании, так как вы ничего не видите, набирая текст.

Это поле многострочного ввода, и когда текст переходит на следующую строку, представление перемещается дальше, поэтомувы можете увидеть предыдущие строки текста.Но вы не видите, что печатаете, что я считаю довольно важным.

У кого-нибудь есть мысли по поводу решения этой проблемы?

Ответы [ 2 ]

10 голосов
/ 05 января 2011

Итак, я обнаружил причину проблемы. В моем AndroidManifest.xml я установил

<uses-sdk android:minSdkVersion="3" />

Очевидно, что использование minSdkVersion ниже «4» было причиной проблемы. При изменении его на «4», раскладка выглядела так, как и должна быть, и у EditText была первая строка над верхней частью программной клавиатуры.

Спасибо за помощь, Фобос.

3 голосов
/ 30 декабря 2010

Оберните ваш пользовательский интерфейс в контейнер ScrollView. Это позволит пользователю видеть весь пользовательский интерфейс, хотя при необходимости прокручивая его. Пользовательский интерфейс может быть недостаточно большим для прокрутки без клавиатуры на экране, но когда клавиатура отображается, это эффективно уменьшает размер экрана.

...