Есть ли способ заставить прокрутку экрана разрешить просмотр текстового поля?
Мягкая клавиатура Android покрывает поле edittext
Ответ 1
Вы спрашиваете, как контролировать то, что видно, когда открывается мягкая клавиатура? Возможно, вы захотите сыграть с windowSoftInputMode. Подробнее см. документы разработчика.
Ответ 2
У меня были такие же проблемы. Попробуйте ввести следующий код:
android:windowSoftInputMode="adjustPan"
добавьте его в свой манифест .xml в теге активности активности, которая содержит вход. Пример:
<activity
android:name=".Activities.InputsActivity"
...
android:windowSoftInputMode="adjustPan"
/>
Ответ 3
У меня была такая же проблема, когда экранная панель находилась поверх представлений EditText, которые были помещены в нижней части экрана. Я смог найти решение, добавив одну строку в мою активность в файле AndroidManifest.xml.
android:windowSoftInputMode="adjustResize|stateHidden"
Вот как выглядит весь тег активности:
<activity
android:name="com.my.MainActivity"
android:screenOrientation="portrait"
android:label="@string/title_activity_main"
android:windowSoftInputMode="adjustResize|stateHidden" >
</activity>
Здесь самое важное значение - adjustResize. Это сдвинет весь пользовательский интерфейс, чтобы дать место для экранной клавиатуры.
Ответ 4
Почему бы не попытаться добавить ScrollView для переноса всего, что вы хотите прокрутить. Вот как я это сделал, когда на самом деле я оставляю заголовок сверху, который не прокручивается, а виджеты диалогового окна (в частности, EditTexts) прокручиваются при открытии программной клавиатуры.
<LinearLayout android:id="@+id/HeaderLayout" >
<!-- Here add a header or whatever will not be scrolled. -->
</LinearLayout>
<ScrollView android:id="@+id/MainForm" >
<!-- Here add your edittexts or whatever will scroll. -->
</ScrollView>
У меня обычно есть LinearLayout внутри ScrollView, но это зависит от вас. Кроме того, установка стиля полосы прокрутки в externalInset помогает, по крайней мере, на моих устройствах.
Ответ 5
Все, что вам нужно сделать, это
android:isScrollContainer="true"
источник: http://www.davidwparker.com/2011/08/25/android-fixing-window-resize-and-scrolling/
Ответ 6
Извините за восстановление старого потока, но никто не упоминал установку android:imeOptions="flagNoFullscreen"
в элементе EditText
Ответ 7
android:windowSoftInputMode="adjustPan"
android:isScrollContainer="true"
работает для android EditText, пока он не работает для просмотра веб-страниц или xwalkview. Когда мягкая клавиатура скрывает ввод в webview или xwalkview, вы используете android:windowSoftInputMode="adjustResize"
Ответ 8
Я считаю, что вы можете сделать это прокруткой, используя трекбол, который в конечном итоге может быть достигнут программным путем с помощью методов выбора, но это всего лишь идея. Я знаю, что метод трекбола обычно работает, но что касается точного способа сделать это и заставить его работать с кодом, я не уверен.
Надеюсь, что это поможет.
Ответ 9
добавьте эту единственную строку в свою относительную активность, когда обложка основной панели редактирует метод text.inside onCreat().
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
Ответ 10
Я знаю, что это старо, но ни одно из вышеперечисленных решений не помогло мне. После обширной отладки я разобрался с проблемой. Решением является установка для атрибута android:windowTranslucentStatus
false в моем файле styles.xml.
Ответ 11
Измените свой AndroidManifest.xml
android:windowSoftInputMode="adjustResize"
Добавьте это в корневой вид файла макета.
android:fitsSystemWindows="true"
Все это.