172 votes

Déplacer les mises en page vers le haut lorsque le clavier logiciel est affiché ?

J'ai quelques éléments dans un RelativeView avec l'ensemble d'attributs inférieur align, lorsque le clavier logiciel apparaît, les éléments sont cachés par le clavier logiciel.

Je voudrais qu'ils se déplacent vers le haut afin que s'il y a suffisamment d'espace à l'écran, ils soient affichés au-dessus du clavier, ou pour rendre la section au-dessus du clavier déroulante afin que l'utilisateur puisse toujours voir les éléments.

Avez-vous des idées sur la façon d'aborder cette question ?

122voto

Christopher Orr Points 58514

Oui, consultez cet article sur le site des développeurs Android qui décrit comment le framework gère l'apparition du clavier logiciel.

L'attribut android:windowSoftInputMode peut être utilisé pour spécifier ce qui se passe par activité : si la mise en page est redimensionnée ou si elle défile, etc.

108voto

breceivemail Points 8024

Vous pouvez également utiliser ce code dans la méthode onCreate() :

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

36voto

SergeyB Points 596

Ajouter dans AndroidManifest.xml pour votre activité :

android:windowSoftInputMode="adjustPan|adjustResize"

36voto

Jose Kurian Points 84

Modifiez l'activité de votre fichier Manifeste comme

android:windowSoftInputMode="adjustResize"

OU

Apportez des modifications onCreate() dans la classe d'activité comme

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

23voto

Ronak Poriya Points 1963

problème similaire auquel je faisais face avec ma mise en page qui consiste à faire défiler la vue à l'intérieur. Chaque fois que j'essaie de sélectionner du texte dans EditText, la barre d'action Copier/Couper/Coller est déplacée vers le haut avec le code ci-dessous car elle ne redimensionne pas la mise en page

android:windowSoftInputMode="adjustPan"

En le modifiant comme suit :

  1. AndroidManifest.xml

    android :windowSoftInputMode="stateVisible|AdjustResize"

  2. fichier style.xml,dans le style d'activité

    vrai

Ça a marché pour moi.

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