Question

J'ai eu un certain nombre de problèmes avec ScrollViews. Récemment, j'essayé de créer un LinearView dont le contenu dépasse la taille de l'écran, donc je créé la nouvelle mise en page avec élément parent ScrollView et définir sa largeur et la hauteur des valeurs personnalisées (la mise en page doit apparaître comme dialogue - ne pas remplir tout l'écran).

Lorsque l'élément est sélectionné la frontière rouge semble embrasser le rectangle de ScrollView LayoutWidth et LayoutHeight prédéfini qui est OK. Ensuite, je placé à l'intérieur du LinearView et définir les valeurs LayoutWidth et LayoutHeight à fill_parent.

Alors quand j'ai commencé à ajouter les éléments dans la LinearLayout la bordure (Lile rouge) enveloppé les éléments insérés, et non l'ensemble ScrollView de parent.

Alors, quand le contenu du LinearLayout (enfant de ScrollView) a dépassé la taille des parents ScrollView le parchemin ne semble pas et les éléments de fond sont tout simplement invisibles.

De toute façon .. Dans ce cas, le contenu XML était trop vaste pour poster la question ici et maintenant, je vais avoir le même problème avec l'exemple plus simple.

La partie suivante de la mise en page est destiné à être un EditText défilante (dans le cas où l'entrée de l'utilisateur est supérieure à la taille primaire du widget). Je voulais régler la hauteur EditText à 120px, donc je régler la hauteur de ScrollView mère à l'enfant et 120px EditText à fill_parent. Encore une fois dans ce cas, le EditText ne remplit pas toute la zone ScrollView mais une seule ligne:

 <ScrollView android:layout_height="120px" android:layout_width="fill_parent">
<EditText android:id="@+id/txtContent" android:layout_height="fill_parent" android:layout_width="fill_parent" android:text="TestContent">
</EditText>
</ScrollView>

Quelqu'un sait-il comment remodeler le contenu ci-dessus afin que le EditText remplit le contrôle parent et dans le cas où l'entrée de l'utilisateur dépasse la taille de commande le défilement apparaît?

Merci!

Modifier

Voici les captures d'écran de la mise en page

retiré lien mort ImageShack lien mort ImageShack supprimé

Était-ce utile?

La solution

Votre EditText devrait avoir une hauteur de wrap_content. fill_parent n'a pas de sens dans un ScrollView. Si vous voulez que le EditText pour remplir votre ScrollView quand il est contenu est plus petit que le ScrollView, utilisez android:fillViewport="true" sur le ScrollView.

Autres conseils

Oui, comme Romain dit, les besoins de ScrollView suivants combo.

  1. pour ScrollView android:fillViewport="true"
  2. pour des enfants de ScrollView android:layout_height="wrap_content"
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top