Intereting Posts
Как вы программно заканчиваете вызов на 2.3+? Индивидуальное проектирование с высотой больше, чем высота экрана Как загрузить видео из папки с ресурсами? (Чтобы воспроизвести их с помощью VideoView) «ResultIndex равен -1, многоугольник должен быть недействительным!» Adter addView () Как показать логотип, иконку, заголовок, субтитры панели инструментов, когда они завернуты в CollapsingToolbarLayout? Есть ли что-то, что эквивалентно файлам plist на Android, как в iOS? Добавьте onlongclick прослушиватель в alertdialog Кнопка «Назад» панели действий не возвращается в Android Android – Правильный способ ожидания создания объекта-обработчика Android – перетаскивание маркера без сохранения на карте api v2 Кросс-платформенная библиотека для связи между C ++ и платформенным кодом (iOS, Android) Android-NDK-Add Native Support-NDK недействителен в настройках Android – Можно ли использовать навигационный ящик с правой стороны? Как использовать инструмент AIDL из командной строки с использованием кода примера SDK? Как я могу управлять звуковыми томами в моем приложении Android?

Как сделать вид андроида прокручиваемым при появлении клавиатуры?

У меня есть представление с некоторыми полями (имя, адрес электронной почты, пароль, кнопка регистрации):

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ViewFlipper android:id="@+id/viewflipper" android:layout_width="fill_parent" android:layout_height="wrap_content" > //Layouts </ViewFlipper> </ScrollView> 

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

Solutions Collecting From Web of "Как сделать вид андроида прокручиваемым при появлении клавиатуры?"

Вам необходимо включить android:windowSoftInputMode="adjustResize" для вашей активности в файле AndroidManifest.xml, а затем Android должен автоматически android:windowSoftInputMode="adjustResize" :

 <activity android:name="..." ... android:windowSoftInputMode="adjustResize"> ... /> 

Я создал простой XML-файл, надеюсь, это то, что вы ищете.

Шаг 1 . Вы можете прокручивать, когда появится клавиатура.

Шаг 2 . Когда вы нажмете на Text-Field, он появится на клавиатуре Focus / above.

 <ScrollView android:id="@+id/ScrollView01" xmlns:android="http://schemas.android.com/apk/res/android" android:fillViewport="true" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:weightSum="1.0" android:layout_height="match_parent" android:focusable="true" android:focusableInTouchMode="true" android:id="@+id/l_layout"> <EditText android:layout_height="wrap_content" android:layout_width="match_parent" android:id="@+id/editText1" android:layout_marginTop="100dp"> <requestFocus></requestFocus> </EditText> <EditText android:layout_height="wrap_content" android:layout_width="match_parent" android:id="@+id/editText2" android:layout_marginTop="100dp"> </EditText> </LinearLayout> </ScrollView> 

Вы пробовали это:

 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ViewFlipper android:id="@+id/viewflipper" android:layout_width="fill_parent" android:layout_height="wrap_content" > <ScrollView android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/scroll_container"> //Layouts </ScrollView> </ViewFlipper> 

В моем случае решение @Aleks G не работало. Поэтому я решил проблему с

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" > <ScrollView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/registration_scroll_view" android:layout_alignParentTop="true" android:layout_above="@+id/btn_register_submit" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:orientation="vertical"> <!--This comment will be replaced by your focusable views--> </LinearLayout> </ScrollView> <Button android:id="@+id/btn_register_submit" android:layout_width="match_parent" android:layout_height="50dp" android:layout_alignParentBottom="true" android:background="@drawable/form_action_button_green" android:gravity="center" android:text="@string/submit" /> </RelativeLayout>