WindowSoftInputMode y ScrollView

La actividad principal de la aplicación para Android es la siguiente:

<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/RelativeLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/background" android:orientation="vertical" > <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/ScrollView" android:layout_width="fill_parent" android:layout_height="wrap_content" android:fillViewport="true" android:orientation="vertical" android:paddingLeft="60dp" android:paddingTop="53dp" > <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/RelativeLayout1" android:layout_width="fill_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:id="@+id/billAmountText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/billAmount_string" android:textAppearance="?android:attr/textAppearanceMedium" /> <EditText android:id="@+id/billAmount" android:layout_width="173dp" android:layout_height="wrap_content" android:layout_below="@id/billAmountText" android:layout_marginTop="3dp" android:inputType="numberDecimal" /> </RelativeLayout> </ScrollView> </RelativeLayout> 

Para asegurarse de que la imagen de fondo (definida en el primer RelativeLayout) no se exprime cuando el teclado aparece, he establecido android:windowSoftInputMode="stateVisible|adjustPan en el archivo de manifiesto para mi actividad. Disposición ahora, nada consigue vuelto a clasificar según el tamaño.

Pero el problema es que mi ScrollView no funciona ahora porque supongo que el sistema piensa que la ventana no necesita cambiar el tamaño debido a mi modificación anterior al manifiesto, por lo que el ScrollView no está activado. Lo contrario ocurre cuando tomo android:windowSoftInputMode="stateVisible|adjustPan fuera, el desplazamiento funciona, pero el fondo se apretó cuando el teclado aparece.

¿Hay alguna manera de codificar para que mi fondo no se apretó, y mi ScrollView todavía funciona? ¡Gracias!

2 Solutions collect form web for “WindowSoftInputMode y ScrollView”

Intente utilizar en su actividad la propiedad windowSoftInputMode con los siguientes valores:

android:windowSoftInputMode="stateAlwaysHidden|adjustResize"

No sé si es necesario, pero puede intentar agregar a la etiqueta ScrollView su diseño el fillViewPort a true . Así que debería parecer algo que te muestro a continuación:

 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:fillViewport="true"> <!-- Other Views --> </ScrollView> 

Avísame sobre tu progreso.

En su vista de desplazamiento coloque un diseño relativo, el niño 0 es una vista de imagen y el niño 1 es su contenido. Utilice la vista de imagen para su imagen de fondo (src) en lugar del fondo de la vista de desplazamiento. La vista de la imagen respetará los tipos scaleTypes, mientras que el fondo de un layout no.

  • Android: espacio de nombres de diferencia en el archivo de diseño
  • RecyclerView con CollapsingToolbarLayout se desplaza mal cuando se lanza
  • Eliminar la barra de título predeterminada
  • IllegalStateException: No se pudo encontrar el método insert (View) en un padre o antepasado Context class android.support.v7.widget.AppCompatButton
  • Cómo especificar un color de formato RGB con XML en Android
  • Cambiar el color del borde cuando edittext está enfocado
  • ¿Cómo hacer referencia al atributo de color en drawable?
  • ¿Por qué usar Fragmentos?
  • Disposición de Android: cuándo utilizar la aplicación: vs android :?
  • Java.lang.IllegalArgumentException: y debe ser <bitmap.height ()
  • Alinear el elemento en la esquina de la ronda Dispositivo de desgaste
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.