2013-08-14 5 views
0

Dans Android, j'ai un RelativeLayout nommé A. Il a une vue nommée B dans la partie supérieure de A. Il a une vue nommée C dans le fond de A.Le point de vue de défilement lorsque le clavier montre

code J'ai jusqu'à présent:

RelativeLayout A = new RelativeLayout(context); 
View B = new View(context); 
LayoutParams paramsB = new LayoutParams(LayoutParams.FILL_PARENT, 40); 

paramsB.addRule(RelativeLayout.ALIGN_PARENT_TOP); 
View C = new View(context); 

LayoutParams paramsC = new LayoutParams(LayoutParams.FILL_PARENT, 40); 
paramsC.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); 

A.addView(B,paramsB); 
A.addView(C,paramsC); 

Comment ajuster la taille de RelativeLayout quand le clavier montre?

+0

Voulez-vous que la vue défile lorsque le clavier est affiché? –

+0

oui, savez-vous quelle méthode dans l'API? – user2537585

+0

pouvez-vous me montrer le code xml de votre vue? –

Répondre

0

Il existe deux façons d'y parvenir:

D'abord, vous pouvez définir l'attribut suivant dans de AndroidManifest.xml

android:windowSoftInputMode="stateVisible|adjustResize" 

Deuxièmement, vous pouvez ajouter scrollview que votre vue parent de votre vue entière.

+0

La première façon ne peut pas résolu.Il va redimensionner la mise en page, je veux la position B et C ne pas défiler. La deuxième façon, je ne veux pas utiliser scollview, car une raison supplémentaire. – user2537585

+0

qu'en est-il de adjustPan? L'as tu essayé? –

+0

oui, j'ai essayé, toute la fenêtre sera défilée, ce n'est pas ce que je veux – user2537585

0

Je pense que vous pouvez définir les paramètres de disposition de la disposition relative 'A' sur WRAP_CONTENT de sorte que lorsque le clavier vient du bas, il ajustera la hauteur avec la disposition relative. 'mise en page relative parce que vous avez ajouté Align_parent_bottom et Align_parent_top à true.

Questions connexes