Ich habe eine feste Höhe ListView
. Es hat einen Teiler zwischen Listenelementen, aber es werden auch Teiler nach dem letzten Listenelement angezeigt.
Gibt es eine Möglichkeit, nach dem letzten Element in keinen Teiler anzuzeigen ListView
?
Fügen Sie einfach
android:footerDividersEnabled="false"
auf Ihre Listview Beschreibung
layoutHeight="wrap_content"
, verschwindet der untere Teiler.Wie @ScootrNova sagte, scheint sich dies in Android 4.4.x anders zu verhalten (auch bekannt als Buggy) (ich weiß nicht genau, wann das Problem auftritt)
Dies hängt mit dem speziellen Fall der Verwendung von
padding
+clipToPadding="false"
- in 4.4.x zusammen. Die Fußzeile wird außerhalb der Ansicht gezeichnet, aber Clips zum Auffüllen zeigen dies.Die Lösung, die ich verwendet habe, war, die Fußzeile over-scroll (
android:overScrollFooter
) auf transparent zu setzen, was irgendwie funktioniert ...Meine endgültige Lösung (Hinweis
android:footerDividersEnabled
zur Rückkompatibilität):getestet auf einem HTC One X mit 4.1.1, einem Nexus 5 mit 4.4.4 und einem Samsung Galaxy S5 mit 4.4.2 (dank @ Dallas187). Scheint auch Lollipop zu arbeiten. (Danke an die Kommentatoren!)
quelle
android:overScrollFooter
hat den Trick für mich getan. Arbeiten an 5.0.2 und 5.1.android:footerDividersEnabled="false"
für Rückenkompatibilität brauchenWenn Sie dies per Code tun möchten, ist es:
und wenn Sie ein ListFragment verwenden, können Sie die Listenansicht erhalten, indem Sie:
Nur kommentiert, da dies in Google die Nummer 1 ist
quelle
Es scheint, dass die folgende Zeile auf einem Lollypop-Gerät nicht funktioniert.
Verwenden Sie daher den folgenden Code, um den Teiler nach dem letzten Element in der Liste zu entfernen.
quelle
Verwenden Sie background = @android: color / transparent. Funktioniert perfekt. Sie können weiterhin den Hintergrund Ihres Zeilenlayouts verwenden
quelle