RecyclerView List und SQLite

  • 3 Antworten
  • Neuster Beitrag
D

DmanT

Neues Mitglied
Threadstarter
Hallo,

ich habe ein Problem mit einem RecyclerView. In diesem lasse ich daten aus einer SQLite Tabelle anzeigen. Das klappt auch soweit, jedoch bei jedem ersten Starten nach einem Destroy, nicht jedoch beim Resume ist die Activity einfach erstmal weis. Ich sehe die Appbar und den Title etc... der Rest bleibt weiß. Nach 3 - 4 sek erscheint dann alles wie es soll, ist anklickbar etc..

Ich denke das kommt daher das er die Daten aus der Tabelle holt und sie in die Liste schreibt... Richtig?

Gibt es da eine Möglichkeit das irgendwie zu beschleunigen? Die ganze Liste irgendwie zu speichern... anzeigen zu lassen und dann kann die App im Hintergrund die neuen Daten abfragen und nachladen... Also so wie die App im Betrieb... Da klappt nämlich alles. Lediglich jedesmal der erste Start....


Zu SQLite habe ich noch eine frage...

Die Verwendung klappt wunderbar jedoch bin ich mehr so mysql gewöhnt und habe da so meine Probleme... Wenn ich nun eine Tabelle um ein Feld erweitere, und die funktionen anpasse und dann ein AppUpdate mache... ja.. dann stürzt die App mit dem Fehler ab das es die Tabellenspalte nicht gibt. Ändere ich die Datenbank Version dann wird die komplette Datenbank gelöscht und die neue.. dann aber mit alles korrekten Feldern erstellt...

Also wie update ich die Tabellen ohne die Daten zu löschen?

ich danke euch.
 
swa00

swa00

Moderator
Teammitglied
Ich denke das kommt daher das er die Daten aus der Tabelle holt und sie in die Liste schreibt... Richtig?
@DmanT

Nun , wir haben ja keinen Source von Dir , also können wir nur mit unserer Kristallkugel vermuten :)

Grundsätzlich musst du dem UI Thread die Luft geben , sich aufzubauen und wenn du derweil etwas
blockierst ( z.b. Einlesen der Daten), dann ist das nicht sehr förderlich .

Deshalb gehören solche Einleseoperationen/Füllen des Arrays grundsätzlich in einen gesonderten Thread.
Ist er kurzzeitig , dann z.b. mit einem AsyncTask.

SQLite : Du musst dir dazu eine eigene Versionsverwaltung basteln
und Abstürze mit Try & Catch abfangen.
 
Zuletzt bearbeitet:
D

DmanT

Neues Mitglied
Threadstarter
Ok, ich danke euch. Also das mit SQLite habe ich mir schon fast gedacht das ich da eine Routine basteln muss. Aber ich wollte es nicht so recht wahr haben.... jetzt habe ich leider doch das auch noch vor mir :)
 
Oben Unten