Ich kann mir vorstellen, dass dies eine ziemlich einfache Antwort sein sollte, wenn Sie XML-Layouts besser verstehen, als ich das tue. Ich glaube nicht zu bekommen, was ich dachte, wenn ich die match_parent layout_height verwenden sollte.match_parent nicht wie erwartet
Ich habe ein Linearlayout Wurzelelement mit android: orientation = "vertikal". Innerhalb dieser Linearlayout Ich möchte drei Elemente: - Textview - Listview - Textview
sowohl für die Textviews I android gesetzt: layout_height = „wrap_content“ so, dass sie nur so groß sein wird, wie es notwendig ist, ihre anzuzeigen Inhalt. Die Sache ist, ich möchte, dass die eine TextView an der Spitze des Formulars sitzt, die andere am unteren Rand des Formulars sitzen, während die ListView den verfügbaren Platz auf dem Formular füllt. Also hier ist das, was mein xml Layout wie folgt aussieht:
<TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="30sp" android:text="Top TextView" /> <ListView android:id="@+id/listView_Species" android:layout_width="match_parent" android:layout_height="match_parent" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="30sp" android:text="Bottom TextView" />
Aber es funktioniert nicht. Hier ist, was ich bekomme. Ich habe die ListView ausgewählt, so dass sie hervorgehoben wird. Beachten Sie, wie es sich bis zum Ende des Formulars erstreckt, indem Sie das untere TextView vom Formular entfernen.
Wenn ich die layout_height -Eigenschaft der ListView auf einen festen Wert wie 180dp ändern, sieht das Formular so aus. Ich poste das nur, um zu beweisen, dass der untere TextView da ist, aber ich weiß immer noch nicht, wie man ihn am unteren Bildschirmrand befestigt, während der ListView den verbleibenden Platz einnimmt, aber zwischen den beiden TextViews.
Vielen Dank im Voraus.
Ich bin upvoting Ihre Antwort, aber es gibt mir nicht genau das, was ich wollte. Dadurch werden die TextViews auch auf einen bestimmten Prozentsatz der Bildschirmgröße gedehnt. Ich möchte, dass diese behoben werden, während sich nur der ListView ausdehnt, um den verbleibenden Platz einzunehmen. Royi oben, veröffentlichte die Lösung dafür. –