Android: как мне предотвратить, чтобы программная клавиатура поднимала мой взгляд? - PullRequest
335 голосов
/ 17 ноября 2010

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

Кто-нибудь еще сталкивался с этой проблемой? Знаете как это исправить?

Ответы [ 24 ]

6 голосов
/ 27 января 2014

Пока ответы мне не помогли, поскольку у меня есть кнопка и поле textInput (рядом) под textView, которое скрывалось клавиатурой, но это решило мою проблему:

android:windowSoftInputMode="adjustResize"
5 голосов
/ 01 мая 2014

Добавьте следующий код к «активности» файла манифеста.

android:windowSoftInputMode="adjustResize"
5 голосов
/ 24 июля 2015

Это было лучшее, что сработало для меня

android:windowSoftInputMode="adjustNothing"

Попробуй!

3 голосов
/ 12 сентября 2018

Этот работал для меня

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING);
3 голосов
/ 19 июля 2017

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

android:isScrollContainer="false"

Удачи!

2 голосов
/ 28 января 2014

Главное окно действия не изменится, чтобы освободить место для виртуальной клавиатуры.Скорее, содержимое окна будет автоматически панорамироваться, так что текущий фокус никогда не будет скрыт клавиатурой, и пользователи всегда смогут увидеть, что они печатают.

android:windowSoftInputMode="adjustPan"

Это может быть лучшим решением для того, что выжелательно.

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

Для прокрутки:

, если после добавления android:windowSoftInputMode="stateHidden|adjustPan" в манифесте Android все еще не работает.

На это может повлиять то, что когда появится клавиатура, она перейдет в режим прокрутки, и если ваша кнопка / какие-либо объекты не будут отображены в окне прокрутки, тогда объекты будут следовать за клавиатурой и перемещать ее положение.

Проверьте свой xml, где находится ваша кнопка, и убедитесь, что она находится под вашей прокруткой, а не вне ее.

Надеюсь, это поможет.: D

1 голос
/ 28 марта 2019

Когда вы хотите скрыть вид при открытой клавиатуре.

добавьте это в файл Activity в файле манифеста`

Android: windowSoftInputMode = "stateHidden | adjustPan" `

1 голос
/ 30 августа 2018

@ проявляется в вашей деятельности:

android:windowSoftInputMode="stateAlwaysHidden|adjustPan"
1 голос
/ 29 мая 2018
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

Этот работает на меня.

...