2014-01-25 26 views
6

Ich bin mit der Implementierung einer Ansicht konfrontiert, wo ich vielleicht fast 100 Elemente in einer Liste laden muss. Ich habe Zweifel, in welchem ​​der beste Weg, es zu implementieren. Ich weiß bereits, dass ListView die Ansichten recycelt und ScrollView alle im Speicher hält. Der Punkt ist, dass ich in Anwendung Paging auf die Scrollview dachte, um große Ladezeiten zu vermeiden, wenn die App alle Elemente aufbläht.Android ScrollView Vs ListView

Anwendungen wie Google+, Facebook, Twitter oder LinkedIn, Denkst du, sie verwenden ListView?

Dank

+0

ja verwenden Sie listview. – Raghunandan

Antwort

12

ListView ist definitiv der Weg zu gehen. Es ist einfacher zu verwenden als ScrollView, und ein Paging-System passt nicht in den Stil von Android.

ListView soll eine Liste von Varrying-Längen basierend auf einem Array von Informationen erstellen. ScrollView ist für eine (normalerweise) festgelegte Anzahl von untergeordneten Elementen in der Ansicht (definiert im Layout-XML).

ListViews blähen nicht alle Elemente auf, sie blähen auf, aber viele können auf einer Seite gleichzeitig passen. Ihre schnellste Option, mit oder ohne Paging, ist ein ListView. Wenn jedes Kind jedoch völlig anders ist, dann ist ScrollView der richtige Weg.

+0

Es gibt Unterschiede zwischen den Kindern, deshalb habe ich die Beispiele von Facebook, Google +, ... gefragt. Ich wollte nur verstehen, wie es optimiert wird, weil ich im Moment mit ScrollView eine große Verzögerung im Schritt habe die Ansichten zu zeigen, sogar die Implementierung in anderen Thread. Danke für die Antwort und nicht zusätzliche negative Punkte hinzufügen. –

+0

Was sind die Unterschiede? Und fügen Sie die Ansichten der Bildlaufansicht programmgesteuert hinzu oder sind alle Ansichten im XML-Layout definiert? Und wie sind die Kinder anders? Sind sie einfach unterschiedliche Inhalte oder völlig unterschiedliche Layouts? Ich habe keine Ahnung von Facebook, aber google + und Gmail Ich benutze die Seite ListView – Kylelem62

+0

Ich habe es geschafft, herauszufinden, wo mein Fehler war.Wenn ich mit Bildern in einem Artikel arbeite, hatte ich riesige Verzögerungen, wenn jedes Bild war sichtbar, sogar mit der Implementierung von Volley Library mit DiskCache.Ich habe versucht, es mit Scrollviews zu implementieren und es löste mein Problem für eine kleine Menge von Elementen, aber mit einer riesigen Liste hat es nicht funktioniert. Ich wusste nichts über [JakeWharton DiskLruCache] (https://github.com/JakeWharton/DiskLruCache). Die Kombination der JackeWharton-Bibliothek mit Volley hat mein Verzögerungsproblem gelöst, dann ist ListView perfekt, um damit zu arbeiten. Die Quintessenz ist, dass mein Ansatz mit den Bildern falsch war. danke –