63 votes

Android: montrer le clavier déplace mes composants vers le haut, je veux les cacher à la place

J'ai ajouté un LinearLayOut d'avoir quelques boutons de Mon écran est RelativeLayOut auto

Voici le code pour que linéaire layout manager

<LinearLayout android:orientation="horizontal"
  android:gravity="bottom" android:layout_alignParentBottom="true"
  android:layout_height="wrap_content" android:layout_width="fill_parent"
  android:id="@+id/Footer" android:layout_marginBottom="5dp">

Voici le problème:

Il y a un EditText composant sur le dessus et il s'affiche un clavier virtuel sur l'écran , et apporte mon Pied de page manager en haut du clavier et, éventuellement, BRISE tout mon UI.

Qu'est-ce que la solution exacte?

P. S. j'ai supprimé android:gravity="bottom" et android:layout_alignParentBottom="true" , un par un, mais avec de la chance dur je n'ai pas obtenu le résultat désiré.

Merci

168voto

Asahi Points 5938

Ajoutez android:windowSoftInputMode="adjustPan" pour se manifester - à l'activité correspondante:

   <activity android:name="MyActivity"
    ...
    android:windowSoftInputMode="adjustPan"
    ...
  </activity>
 

15voto

aaronvargas Points 1881

Tu veux probablement

 <activity
     ...
   android:windowSoftInputMode="adjustNothing"> 
</activity>
 

Cela empêchera tout changement de disposition lorsque le clavier virtuel est affiché.

Il y a probablement une certaine confusion à ce sujet car il est actuellement absent de la documentation à http://developer.android.com/guide/topics/manifest/activity-element.html#wsoft

0voto

Varma Points 11
android:windowSoftInputMode="adjustPan"

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X