#android #kotlin #android-fragments #android-softkeyboard
Вопрос:
В моем приложении для Android всякий раз , когда пользователь выбирает TextView
, появляется клавиатура, но она сдвигает мой фрагмент вверх. Я попробовал следующее в своем onViewCreated
, и это не сработало:
this@MainFragment.requireActivity().window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
Как предотвратить смещение фрагмента клавиатуры вверх? Я хочу, чтобы фрагмент был исправлен, и когда TextView
он выбран, клавиатура просто находится поверх фрагмента.
Комментарии:
1. Попробуйте завернуть его в
ScrollView
Ответ №1:
Я думаю, вам нужно добавить adjustPan
флаг в свою активность AndroidManifest
. Есть два основных флага, которые являются следующими.
Отрегулируйте размер Главного окна действия всегда изменяется, чтобы освободить место для программной клавиатуры на экране.
Регулировка размера главного окна действия не изменяется, чтобы освободить место для программной клавиатуры. Скорее, содержимое окна автоматически перемещается, так что текущий фокус никогда не заслоняется клавиатурой, и пользователи всегда могут видеть, что они печатают. Как правило, это менее желательно, чем изменение размера, поскольку пользователю может потребоваться закрыть программную клавиатуру, чтобы добраться до затемненных частей окна и взаимодействовать с ними.
Поэтому я предлагаю вам использовать adjustPan
то, что вам кажется нужным
<activity android:windowSoftInputMode="adjustPan"> </activity>
Комментарии:
1.
adjustPan
не сработало, ноadjustNothing
сработало.