Wie update ListView auf Blättern, während das abrufen von Daten vom server in Android?
Derzeit bin ich mit AsyncTask zum behandeln von Http-Verbindung und abrufen von Daten als JSON-format.
Das laden aller Daten ist trivial, aber es verbraucht zu viel Zeit, so entschied ich mich zu wechseln, laden Sie 10 Gegenstände zur Zeit mit LIMIT OFFSET
(mysql).
Als Nächstes setzte ich die Veranstaltung onScroll
für meine Liste", um erstellen Sie eine neue AsyncTask
jedes mal, wenn Benutzer Blättern. Aber von was ich gelesen habe, AsyncTask
gespeichert ist, in einen thread-pool, die nur 5 threads gleichzeitig, so bin ich nicht sicher, ob dies eine richtige Vorgehensweise ist. Ich bin Neuling auf client/server-Anwendung, so konnte ich das mir jemand einen Rat auf dieses Problem? Alle Artikel, die Dokumentation würde sehr geschätzt werden.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier werden einige nützliche links für Sie,
Android: die Umsetzung der progressbar-und "laden..." für Endlose Liste wie Android Market
Endlose Listview mit aktuellen Asynchrone Aufgabe
Android Endlose Liste
http://www.androidguys.com/2009/10/21/tutorial-autogrowing-listview/
http://mylifewithandroid.blogspot.com/2010/03/progressively-loading-listviews.html
In einfachen Schritten,
Eine typische Vorgehensweise wäre z.B. zum laden von zunächst 25 und dann haben Sie eine Fußzeile in der Liste, die zeigt z.B. die aktuelle Zählung und die Gesamtzahl und nach drücken von Lasten 25 anderen und so weiter. Das wäre eine ausgelagerte Art der Belastung.
Wenn Sie das tun, müssen Sie halten die aktuelle position mitzuteilen und den adapter, dass die Liste sich geändert hat.
Wenn Sie eine
ListView
ich glaube, ich kann sicher davon ausgegangen werden muss, dass Sie über irgendeine Art vonListAdapter
. Stattdessen beginnt ein neuerAsyncTask
imonScroll
Fall, sollten Sie pflegen nur einen einzigenAsyncTask
abrufen von Daten vom server, fügen Sie die Daten in dieListAdapter
dataset und rufen Sie dannnotifyDatasetChanged
auf dieListAdapter
.Den
ListAdapter
undListView
kümmert sich um den rest.