2016-04-10 12 views
0

Ich versuche eine Aktivität zu erstellen, die aus mehreren Layouts besteht (Stellen Sie sich Zeitungsabschnitte wie 'News', 'World News', 'Sport' usw. vor), die regelmäßig ihren Inhalt ändern. Also alle x Sekunden wird eine andere Nachrichtengeschichte gezeigt.Regelmäßig die Ansichten ändern

Was ist der effizienteste Weg, dies in Android zu tun?

Ich begann mit meinem eigenen Layout. Und nur die verschiedenen TextViews und ImageView programmatisch aktualisiert. Das funktionierte gut, außer beim Laden von Bildern, da das Bild bei jedem Anzeigen einer bestimmten Story neu geladen wurde. Dies führte zu einer merklichen Verzögerung (selbst wenn Picassos-Bild-Caching verwendet wurde), da alle Layouts gleichzeitig ihre Nachrichtenstory aktualisierten.

Dann schaute ich auf ViewFlipper. Jetzt blase ich mehrere Layouts programmatisch auf (eines für jede Nachrichtenstory) und füge es dem ViewFlipper hinzu (eines für jeden Nachrichtenbereich). Sobald das erledigt ist, läuft alles ziemlich reibungslos. Aber es dauert ewig, bis all diese Layouts aufgeblasen sind.

Also, was ist der beste Weg, hier zu gehen? Ich konnte keine guten Beispiele online finden, aber vielleicht fehlt mir gerade der richtige Begriff, um nach Google zu suchen.

Danke für jede Hilfe.

Antwort

0

Verwenden Sie einen Looping ViewPager. Ein ViewPager lädt normalerweise die Seite der Seiten vor, wenn die aktuelle Seite angezeigt wird, um die Verzögerung zu verringern. Dafür gibt es eine Bibliothek. https://github.com/imbryk/LoopingViewPager. Hoffe das hilft.