Shared Preferences

  • Hi @ all 8)


    Beschäftige mich gerade neu mit der Android-Programmierung - hab aber schon vorher mit Delphi und C# programmiert.


    Eine Verständnisfrage:


    Shared Preferences speichert ja zwei Wertepaare - kann ich die gespeicherten Werte einfach auslesen oder


    muss ich den Key kennen? Also kann ich z.B. 1000 Werte in Shared Preferences speichern und dann einfach per


    Array 0-999 auslesen um sie in ein View zu platzieren?

  • Du brauchst sie nicht zu wissen. Im Normalfall ist das aber hilfreich, da man ja spezielle Werte und nicht immer alle haben möchte.


    PreferenceManager.getDefaultSharedPreferences(this).getAll();


    mit entrySet bekommst du das ganze Set.


    http://developer.android.com/r…til/HashMap.html#entrySet()


    Über dieses kannst du iterieren und mittels getKey() bzw. getValue() alles rausfischen was du möchtest ;)

  • Willkommen in der objektorientierten Programmierung. :P


    Du solltest dir die zuzugreifenden Keys an zentraler Stelle ablegen, damit du bequem von überall darauf zugreifen kannst und nicht dauernd überlegen musst "Hab ich den String jetzt 'UserWantsUpdates', 'UserWantsUpdateNotification', 'UserNeedsUpdates' oder stumpf 'Updates' genannt?".


    Da du aber 1000 Daten sichern willst gehe ich einfach mal davon aus, dass die SharedPreferences dafür einfach der falsche Weg sind.
    Wie der Name schon sagt sollen sie Einstellungen speichern. Entweder du willst etwas darin speichern, dass keine Einstellungen sind – dann hat das darin nix verloren.


    Oder du hast tatsächlich 1000 Einstellungen – in dem Fall solltest du das ganze mal gewaltig überdenken. Denn niemand hat Lust 1000 Buttons zu drücken. ;)

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Danke für die Antworten - ok sollte nicht für ewig sein, sondern nur am Anfang um mal


    reinzuschnuppern und ein paar Daten zu speichern für div. Zwecke.


    Hab aber mittlerweile SQlight entdeckt - werde es dann wohl direkt damit versuchen.


    Scheint ja auch nicht so schwer zu sein - aber gut zu wissen, dass man das zum Test auch verwenden kann

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!