El teclado suave androide arruina el diseño cuando aparece

Aquí está un diseño:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" > <FrameLayout android:layout_width="match_parent" android:layout_height="0px" android:layout_weight="1" /> <FrameLayout android:background="#0000ff" android:layout_width="match_parent" android:layout_height="0px" android:layout_weight="1" /> <FrameLayout android:layout_width="match_parent" android:layout_height="0px" android:layout_weight="1" /> </LinearLayout> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" /> </RelativeLayout> 

Introduzca aquí la descripción de la imagen

Quiero que la barra azul permanezca intacta cuando se pulsa EditText y aparece un teclado suave. Es decir, quiero que se preserve su tamaño y posición. He probado los cuatro valores posibles para el parámetro de mi actividad android:windowSoftInputMode en el AndroidManifest. Y siempre mi barra azul se mueve o se encoge en el teclado suave que aparece:

android:windowSoftInputMode="adjustUnspecified" o por defecto:

Introduzca aquí la descripción de la imagen

android:windowSoftInputMode="adjustPan" o android:windowSoftInputMode="adjustNothing" :

Introduzca aquí la descripción de la imagen

android:windowSoftInputMode="adjustResize" :

Introduzca aquí la descripción de la imagen

¿Siempre es posible mantener el mismo tamaño y posición cuando aparezca la tecla suave?

Dado que la entrada está entrando en un EditText de la suya, siempre va a mover algo.

Considere la posibilidad de tener dos diseños, uno para cuando el teclado está hacia abajo, uno para cuando el teclado está hacia arriba.

El uso de ViewSwitcher puede ayudar con eso.

Creo que es debido a la LinearLayout que está utilizando. ¿Puedes cambiar tu diseño interior con diseño relativo? En su situación actual, el teclado sólo cambia los márgenes entre los componentes debido a la disposición lineal. Y cambia tu config con adjustNothing.

  • ¿Cómo abrir el teclado virtual de Android (numérico) mediante programación?
  • El pie de página sube cuando se muestra el teclado
  • ¿Por qué aparece el teclado de Android al agregar un ListView?
  • Mostrar un teclado virtual de android en el diseño gráfico de eclipse
  • Escuche el teclado para mostrar u ocultar el evento en android
  • SoftKeyboard abrir y cerrar escucha en una actividad en Android?
  • ¿Cómo ejecutar las aplicaciones de ejemplo de Android SDK?
  • Android El teclado suave flotará solo un diseño específico
  • Edittext.settext () cambia el tipo de teclado a predeterminado
  • ¿Cómo puedo utilizar una fuente personalizada en el área de entrada de un método de entrada?
  • ¿Por qué no android: windowSoftInputMode = "stateVisible | adjustResize" ajustar la pantalla cuando se muestra el teclado virtual?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.