/ / android: windowSoftInputMode = "ajustarResize" cuando ya tengo ScrollView en la actividad - android-layout

android: windowSoftInputMode = "adjustResize" cuando ya tengo ScrollView en la actividad - android-layout

Tengo una actividad con esta estructura de diseños: LinearLayout -> ScrollView -> TableLayout

Debajo de TableLayout tengo EditText, que quiero que se desplace hacia arriba cuando el teclado está activo. Entonces, según algunas lecturas que he hecho, agregué:

android:windowSoftInputMode="adjustResize"

a AndroidManifest.xml, a la actividad relevante, y agregó un contenedor ScrollView al archivo activity.xml, por lo que las estructuras de diseños de la actividad ahora son las siguientes: ScrollView -> LinearLayout -> ScrollView -> TableLayout

El problema: el ScrollView interno no funciona ahora ... Supongo que el ScrollView envolvente toma el control cuando se toca ...

¿Cómo puedo resolver este problema?

Cualquier ayuda será apreciada. Gracias.

Respuestas

10 por respuesta № 1

Estaba enfrentando el mismo problema donde el teclado virtual ocultaba EditTexts en mi pantalla. Introduje la siguiente propiedad para la etiqueta de actividad en el archivo de manifiesto:

 android:windowSoftInputMode="stateVisible|adjustResize|adjustPan"

También necesitaba agregar el siguiente código en la función OnCreate de la actividad:

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

Esto resolvió el problema y funcionó perfectamentebien en todos los emuladores de resolución y dispositivos Samsung. Sin embargo, falló en el dispositivo Google Nexus S y pude ver el mismo problema nuevamente con el teclado virtual ocultando los EditTexts.