web-dev-qa-db-fra.com

Comment déplacer la disposition vers le haut lorsque le clavier virtuel est affiché android

J'ai un écran de connexion avec deux EditTexts et un bouton de connexion dans ma mise en page. Le problème est que, lorsque je commence à taper, le clavier virtuel est affiché et couvre le bouton de connexion. Comment puis-je pousser la disposition vers le haut ou au-dessus du clavier quand elle apparaît?

Je ne veux pas utiliser un ScrollView, je veux juste l'implémenter sans faire défiler l'écran. S'il vous plaît, suggérez-moi un moyen de le faire. Merci d'avance.

82
cavallo

En quelque sorte, j'ai atteint cet objectif en connaissant le statut du clavier virtuel sur l'appareil. Je déplace la mise en page à la position y lorsque le clavier est affiché et je reviens à sa position initiale lorsqu'elle n'est pas montrée. cela fonctionne bien, suivi ces directives.

10
cavallo

Définissez la propriété windowSoftInputMode sur adjustPan et adjustResize

<activity Android:windowSoftInputMode="adjustPan|adjustResize"> </activity>
61
jeet

Essayez ceci dans le fichier manifeste Android correspondant à l’activité.

<activity Android:windowSoftInputMode="adjustPan"> </activity>
32
jency

Utilisez ce code dans la méthode onCreate():

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

seulement

Android:windowSoftInputMode="adjustResize"

dans votre balise d'activité à l'intérieur du fichier manifeste fera l'affaire

16
Bhargav Thanki

Mettez cette ligne en heure de déclaration d'activité dans manifest.xml

<Android:windowSoftInputMode="adjustPan">
12
Dayanand Waghmare
Android:fitsSystemWindows="true"

ajouter une propriété sur la disposition principale du fichier de disposition et

Android:windowSoftInputMode="adjustResize"

ajouter une ligne dans votre fichier Manifest.xml sur votre Activty

c'est un travail parfait pour moi.

8
Kalsariya Devindra

Mettez ceci dans votre déclaration d'activité dans le fichier manifeste <activity Android:windowSoftInputMode="adjustPan|adjustResize"> </activity>

ou si vous le souhaitez, vous pouvez ajouter la méthode onCreate () de votre activité

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
6
Pradnya Kanase

C'est tout ce qui est nécessaire:

<activity Android:windowSoftInputMode="adjustResize"> </activity>
3
Bolling

Lorsque le clavier logiciel apparaît, il modifie la taille de la disposition principale. Pour ce faire, vous devez créer un écouteur pour cette illustration principale et ajouter à cet écouteur le code scrollT0(x,y).

2
Dila Gurung

Si vous travaillez avec xamarin, vous pouvez mettre ce code WindowSoftInputMode =Android.Views.SoftInput.AdjustPan | Android.Views.SoftInput.AdjustResize dans l’attribut d’activité de la classe MainActivity. Par exemple, l’attribut d’activité se présentera comme ci-dessous

    [Activity(WindowSoftInputMode =Android.Views.SoftInput.AdjustPan | Android.Views.SoftInput.AdjustResize)]
    public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsApplicationActivity
    {
        //some code here.
    }
2
Tushar patel

Selon ce guide , la manière correcte d’y parvenir est de déclarer dans votre manifeste:

<activity name="EditContactActivity"
        Android:windowSoftInputMode="stateVisible|adjustResize">

    </activity>
2
David_E

Utilisez la mise en page relative pour ajuster la vue afin que vous puissiez voir cette vue tout en tapant le texte

0
Mahesh

Tu devrais utiliser

Android:windowSoftInputMode="adjustPan|stateHidden"

dans votre AndroidManifest.xml fichier dans lequel vous déclarez votre activité. Cela ajustera le contenu de votre mise en page lorsque le clavier est affiché dans la mise en page.

0
Farhan Ghaffar

Cela fonctionne comme un charme pour moi

getDialog().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
0
droidchef