Frage

Ich habe eine Reihe von Problemen mit ScrollViews hat. Kürzlich habe ich versucht, einen LinearView zu schaffen, die Inhalte der Bildschirmgröße übersteigt, so dass ich das neue Layout mit Mutterelement Scroll erstellt und stellen seine Breite und Höhe, um benutzerdefinierte Werte (das Layout hat wie Dialog angezeigt - nicht den gesamten Bildschirm füllt).

Wenn das Element, das die rote Umrandung ausgewählt ist erscheint das Rechteck vordefinierter Scroll LayoutWidth und LayoutHeight zu umfassen, die in Ordnung ist. Dann legte ich in der LinearView und die Werte LayoutWidth und LayoutHeight zu fill_parent gesetzt.

Dann, als ich begann, die Elemente in das Linearlayout, die Grenze (rot lile) umwickelt die eingefügten Elemente, nicht die ganze Mutterscroll hinzuzufügen.

Also, wenn der Inhalt des Linearlayouts (Kind von Scrollview), um die Größe des übergeordneten Scroll überschritt die Schriftrolle nicht erscheinen und die Bodenelemente sind einfach unsichtbar.

Wie auch immer .. in diesem Fall wird der XML-Inhalt war zu umfangreich die Frage hier zu posten und jetzt habe ich das gleiche Problem mit dem einfacheren Beispiel.

Im folgenden Teil des Layouts sollte eine rollbare EditText sein (falls die Benutzereingabe die primäre Größe des Widgets überschreitet). Ich wollte die EditText Höhe auf 120px gesetzt, so dass ich die übergeordnete Scroll Höhe 120px und das Kind EditText zu fill_parent gesetzt. Auch in diesem Fall hat der EditText nicht den ganzen Bereich Scroll füllen, sondern nur eine einzige Zeile:

 <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>

Wer weiß, wie die oben genannten Inhalte über neu zu gestalten, so dass die EditText die Kontrolleltern füllen und bei der Eingabe des Benutzers übersteigt die Steuergröße des Bildlauf erscheint?

Danke!

Edit:

Im Folgenden sind die Screenshots des Layouts

entfernt tot Images Link
entfernt tot Images Link

War es hilfreich?

Lösung

Ihre EditText sollte eine Höhe von wrap_content haben. fill_parent hat keine Bedeutung in einem ScrollView. Wenn Sie die EditText möchten Ihre ScrollView füllen, wenn es der Inhalt kleiner ist als der ScrollView, Verwendung android:fillViewport="true" auf dem ScrollView.

Andere Tipps

Ja, wie Romain sagte Scroll Bedürfnisse folgende Kombination.

  1. für Scroll android:fillViewport="true"
  2. für ein Kind Scroll android:layout_height="wrap_content"
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top