-2

Ich habe 2 int in meiner Navigationsleiste, deren Wert sich ändert, wenn Sie auf verschiedene Schaltflächen in der App klicken.Wie kann der Wert eines Strings gespeichert werden, nachdem die Aktivität/App zerstört wurde?

Ich habe den Code, um sie erfolgreich zu erhöhen und zu aktualisieren, aber das Problem ist, dass sie zurückgesetzt wurden, wenn ich die App nach dem Schließen oder Beenden öffnen.

Wie kann ich sie dazu bringen, dort zu bleiben, nachdem sie aktualisiert wurden?

Wenn Sie Code von meiner App wollen, dann bitte sagen Sie mir.

Sorry für schlechte Formatierung der Frage, aber ich habe keine Ahnung, wie dies zu tun ist, und daher habe ich keinen Code geschrieben.

Antwort

1

Sie müssen die Informationen in einem persistenten Speicher speichern.

Sie können SharedPreferences verwenden.

SharedPreferences prefs= getSharedPreferences("aName", MODE_PRIVATE); 
//save the value 
     prefs.edit() 
       .putInt("nameOfTheValue", theValue).apply();   
     // get the data  
     prefs.getInt("nameOfTheValue", aDefaultValue); 
0

Sie sollten sie als User SharedPreferences in onDestroy Methode speichern.

public void onDestroy() { 
    super.onDestroy(); 
    SharedPreferences settings; 
    settings = getSharedPreferences("TWO_INT_SAVING", Context.MODE_PRIVATE); 
    //set the sharedpref 
     Editor editor = settings.edit(); 
     editor.putInt("FIRST_INT", firstIntValue); 
     editor.putInt("SECOND_INT", secondIntValue); 
     editor.commit(); 
    } 

Und dann kann man sich wieder wen bekommt benötigt:

SharedPreferences settings; 
    settings = getSharedPreferences("TWO_INT_SAVING", Context.MODE_PRIVATE); 

    //get the sharepref 
    int firstInt = settings.getInt("FIRST_INT", 0); 
    int secondInt = settings.getInt("SECOND_INT", 0);