¿Cómo hacer que una vista de Android se desplace cuando aparece el teclado?
Tengo una vista con algunos campos (nombre, correo electrónico, contraseña, botón de registro):
<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>
Cuando enfoco un campo edittext, aparece el teclado y se superponen los campos inferiores de la vista. Así que no puedo verlos cuando el teclado está presente. Me gustaría saber cómo hacer la vista desplazable para que pueda ver los campos inferiores. Y además, cómo hacer que la vista se desplace automáticamente para hacer que el campo enfocado sea visible.
- El teclado Android se esconde EditText
- Obtener la posición del cursor en Android en Editar texto?
- ¿Cómo abrir el teclado numérico cuando haga clic en EditText?
- Agregue dos puntos al teclado InputType.TYPE_CLASS_NUMBER
- ¿Cómo comprobar si el teclado nativo / hardware se utiliza?
- Cómo deshabilitar copiar / pegar de / a EditText
- Mostrar teclado virtual en android TabLayout
- Android onKeyDown () no se ejecuta al presionar el botón Atrás
- Keycode para Android minimizar el botón de teclado suave
- Cómo abrir el tablero dentro del diseño en android
- Ocultar teclado después de búsquedas de usuarios?
- Método onBackPressed no funciona correctamente
- Controlar los botones Ok SoftKeyboard Android
android:windowSoftInputMode="adjustResize"
atributo android:windowSoftInputMode="adjustResize"
para su actividad en el archivo AndroidManifest.xml – y, a continuación, Android debe realizar el cambio de tamaño automáticamente:
<activity android:name="..." ... android:windowSoftInputMode="adjustResize"> ... />
He creado el archivo xml simple, espero que esto es lo que usted está buscando.
Paso 1 . Puede desplazarse cuando aparezca el teclado.
Paso 2 . Cuando haga clic en Campo de texto, aparecerá en el teclado de enfoque / arriba.
<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>
¿Has probado esto:
<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>
En mi caso, la solución @Aleks G no funcionaba. Así que resolví mi problema con
<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>
- No se encontró ningún recurso que coincida con el nombre dado en main.xml
- Dibujar la línea de trazo en una lona