Wie kann sichergestellt werden, dass sich das vom Benutzer ausgewählte Bild nach dem Neustart von Android nicht ändert?

8

Ich habe ein einfaches Aufkleber-Widget, mit dem der Benutzer beim Platzieren des Widgets einen der Aufkleber auswählen kann. Mein Problem ist, dass der Aufkleber nach dem Neustart des Geräts auf den Standard zurückgesetzt wird. Wie kann ich sicherstellen, dass der vom Benutzer ausgewählte Aufkleber verbleibt, unabhängig davon, ob das Gerät neu gestartet wird oder nicht? Ein Beispiel oder ein Push in die richtige Richtung wäre sehr hilfreich. Ich suche niemanden, der es für mich tut, nur um darüber informiert zu werden, wie man das macht. Danke.

BEARBEITEN Enthaltener Code

Ich bin mir nicht sicher, aber ich denke, dass ich alles falsch mache. Ich habe keine Ahnung, wie ich SharedPreferences so integrieren kann, wie ich es jetzt habe. Könnte mir jemand ein Beispiel geben, wie ich das mit mindestens einem der Bilder, die ich benutze, machen könnte?

%Vor%     
Steve C. 02.11.2015, 04:13
quelle

4 Antworten

2

Genau so:

%Vor%     
Eliran Kuta 10.11.2015, 11:17
quelle
3

SharedPreferences wäre die beste Wahl.

Tatsächlich können Sie das gewählte Bild auf irgendeine Weise speichern, die in Android verwendet wird.

    
N Jay 02.11.2015 04:27
quelle
2

Am liebsten verwende ich SharedPreferences .

So würdest du es machen:

1) Initialisiere ein SharedPreferences-Objekt. Verwenden Sie ein Tag zur Klassifizierung, falls Sie Werte speichern möchten, die sich auf verschiedene Aspekte Ihrer App auswirken.

%Vor%

2) Abrufen der damit verbundenen Werte. In Ihrem Fall könnte es sich um eine URL oder eine Asset-ID handeln. Die Funktion benötigt einen zweiten Wert, der zurückgegeben würde, wenn die Einstellung noch nicht festgelegt wurde.

%Vor%

3) Speichern Sie einen neuen Wert oder ersetzen Sie einen vorhandenen Wert.

%Vor%

Hoffe, das hilft!

    
Pol 06.11.2015 23:11
quelle
0

Behalten Sie Ihr Bild oder eine Logik bei, die Sie erfahren können, ob sich der Benutzer tatsächlich geändert hat.

Ihre Frage darüber, wo Sie sharedreference setzen sollten, setzen Sie es in die Code-Funktion, die das Bild ändert oder worüber Sie reden, können Sie I / O verwenden, um in einen temporären Speicher zu schreiben, sagen wir Context.getCacheDir () und Sie können behalte dein Bild dort, dann überprüfe in deiner onResume () auch, ob diese Datei mit File.exist()

existiert

Denken Sie auch daran, es zu löschen, wenn Sie mit dem Zugriff fertig sind.

    
Elltz 10.11.2015 16:21
quelle

Tags und Links