Layout konkret speichern.

  • Antworten:1
  • OffenNicht stickyNicht beantwortet
  • Forum-Beiträge: 1

03.06.2016, 17:55:06 via Website

Moin,
ich programmiere seit 1 Jahr mit Java und wollte mich mal an android versuchen, da die Syntax ja so ziemlich die gleiche ist.
Ich arbeite gerade an einer Art Notizbuch.
Es wird eine Startseite angezeigt in dem ein "newButton" knopf angezeigt wird. Drückt man auf den Knopf wird dem Layout ein neuer Button hinzugefügt. Auf dem neu erstellten Button kann man drücken, um sozusagen in seine Notiz-Kategorie zu gelangen.
Das Problem ist jetzt, wenn ich jetzt das Layout wechsle und dann mit startActivity(Intent i), dann zurück zur meiner alten
Activity gehe, dann sind alle vorher erstellten Buttons weg.
Das liegt wohl daran, dass ich eine neue Activity mit der methode startActivity aufrufe.

Ich hatte mir jetzt gedacht, dass ich die Buttons erstmal in einer statischen Liste speichere, und dann in der
onCreate() methode, dann in einer for-each schleife alle buttons manuell wieder dem layout hinzufüge. Aber ab dem Punkt crasht dann immer meine Applikation.

Eine zweite Lösung, zu der ich aber gerade nicht viel finde, ist es diese onSaveInstanceState() zu verwenden.
Aber von dem was ich bisher gefunden habe, scheint onSaveInstance state nur int Strings usw. sichern und ausgeben zu können.

Habt ihr eine Idee, wie ich das Layout mit diesen Buttons beim betreten der alten Activity wieder herstellen kann?
MfG
Black Joe

— geändert am 03.06.2016, 17:57:12

Antworten
  • Forum-Beiträge: 434

04.06.2016, 01:12:48 via Website

Grüßung,
"nur int Strings usw.".. Reicht das nicht um die Struktur einer GUI zu speichern? Klar ist es etwas umständlich, aber über ein passendes Datenmodell sehr gut darstellbar.
Spätestens wenn du das Handy neu startest oder die App gänzlich beendest, willst du wahrscheinlich die alte GUI wieder herstellen, oder (anderenfalls müsste der Nutzer ja immer alles wieder neu einstellen)? Und spätestens hier kommst du ums persistente Speichern und entsprechendes Datenmodell nicht herum.
Wissenswertes auf Stackoverflow

Open Source

Antworten

Empfohlene Artikel