Как переместить раскладку вверх при показе софт-клавиатуры на андроид - PullRequest
82 голосов
/ 02 февраля 2012

У меня есть экран входа с двумя EditTexts и кнопкой входа в мою раскладку.Проблема в том, что, когда я начинаю печатать, отображается программная клавиатура, которая закрывает кнопку входа в систему.Как я могу сдвинуть раскладку вверх или над клавиатурой, когда она появляется?

Я не хочу использовать ScrollView, просто хочу реализовать ее без прокрутки вниз.Пожалуйста, предложите мне какой-нибудь способ сделать это.Заранее спасибо.

Ответы [ 16 ]

2 голосов
/ 07 ноября 2015

Когда появляется программная клавиша, она меняет размер основного макета, и вам нужно сделать так, чтобы слушатель для этого основного слоя и в этом слушателе добавил код scrollT0(x,y) для прокрутки вверх.

2 голосов
/ 15 марта 2014

Согласно этому руководству , правильный способ добиться этого - объявить в манифесте:

<activity name="EditContactActivity"
        android:windowSoftInputMode="stateVisible|adjustResize">

    </activity>
0 голосов
/ 25 июля 2018

Это определенно будет работать для вас.

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

0 голосов
/ 18 мая 2016

Вы должны использовать

android:windowSoftInputMode="adjustPan|stateHidden"

в вашем файле AndroidManifest.xml, где вы заявляете о своей активности. Это позволит настроить содержимое макета, когда в макете отображается клавиатура.

0 голосов
/ 01 августа 2014

Для меня это работает как шарм

getDialog().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
0 голосов
/ 03 февраля 2012

Воспользуйтесь относительным макетом, чтобы настроить вид так, чтобы вы могли видеть его при наборе текста

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...