2016-07-20 7 views
0

Meine App verbindet sich mit einem IRC-Server und empfängt IRC-Nachrichten. Die Nachrichten werden in einem Service gespeichert, sodass sie beim Schließen der GUI beibehalten und aktualisiert werden.Ideen für einen Ansatz, um eine Liste ständig wechselnder Daten anzuzeigen

Das Problem, das ich habe, ist, herauszufinden, wie die Nachrichten im Speicher zu speichern (mit einer maximalen Zählgrenze), die mir alle der unter

  1. Aktualisieren, um die Datenstruktur entweder durch Anfügen zu erfüllen erlaubt neue Nachrichten oder ältere
  2. Verwenden Sie die Datenstruktur in einem Listview-
  3. Nicht
012 eine Kopie der Datenstruktur für die Listview machen erforderlich Wegtrimmen

Ich kann leicht 1, aber das Problem ist hauptsächlich 2 & 3. In der Regel müssen Sie eine feste Größe Datenstruktur zu einem ListView übergeben und Änderungen erfordern in der Regel eine vollständige Aktualisierung der Benutzeroberfläche. Ich möchte die Aktualisierung vermeiden, um Leistungsprobleme zu vermeiden.

Ist das überhaupt möglich und wenn ja, welchen Ansatz könnte ich wählen?

Antwort

0

Dies könnte das Problem side-stepping sein, aber vielleicht könnten Sie sich selbst eine serialisierte Liste von nur Nachrichten-IDs, die geändert haben, und dann nur im Haupt-Thread anfordern. Auf diese Weise können Sie Leistungsprobleme vermeiden, indem Sie versuchen, die gesamte Liste zu aktualisieren.

Um Ihre Frage zu beantworten, AFAIK können Sie Daten nur aus Intents und Dateien aus Sicherheitsgründen übergeben. Wenn beide Seiten zusammenarbeiten, können Sie versuchen, ashmem