Heim >Java >javaLernprogramm >Wie greife ich über eine PreferenceActivity in einer anderen Android-Aktivität auf SharedPreferences zu?

Wie greife ich über eine PreferenceActivity in einer anderen Android-Aktivität auf SharedPreferences zu?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-03 03:45:10236Durchsuche

How Do I Access SharedPreferences from a PreferenceActivity in Another Android Activity?

SharedPreferences von einer PreferenceActivity in Android abrufen

Wenn Sie eine PreferenceActivity zum Anzeigen von Anwendungseinstellungen verwenden, werden die Einstellungen automatisch in SharedPreferences gespeichert, wenn Benutzer interagieren mit ihnen. Der Zugriff auf den SharedPreference-Namen von einer anderen Aktivität aus kann jedoch eine Herausforderung sein.

Laut Dokumentation:

„Um eine Instanz von SharedPreferences abzurufen, die von der Präferenzhierarchie in dieser Aktivität verwendet wird, rufen Sie getDefaultSharedPreferences( android.content.Context) mit einem Kontext im selben Paket wie dieser Aktivität.“

Lösung:

Um den SharedPreferences-Namen von einer anderen Aktivität abzurufen, verwenden Sie den folgenden Code:

import android.preference.PreferenceManager;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);

Dieser Code ruft den ab SharedPreferences-Instanz unter Verwendung des Kontexts der Anwendung, der dem Paket der entspricht PreferenceActivity.

SharedPreferences und aktivitätsgesteuerte Einstellungen

SharedPreferences können, wie in der Dokumentation erwähnt, für alle Aktivitäten und Dienste innerhalb einer Anwendung verwendet werden, während aktivitätsgesteuerte Einstellungen verwendet werden sind spezifisch für eine bestimmte Aktivität.

Verwenden SharedPreferences

Für gemeinsame Präferenzen wird empfohlen, den Standardmodus ohne Angabe eines Dateinamens zu verwenden:

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);

Sie können jedoch auch einen Dateinamen angeben:

SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);

Um gespeicherte Werte abzurufen:

int storedPreference = preferences.getInt("storedInt", 0);

Zum Speichern Werte:

SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();

Aktivitätsbezogene Einstellungen verwenden

So verwenden Sie aktivitätsspezifische Einstellungen:

SharedPreferences preferences = getPreferences(MODE_PRIVATE);

Das obige ist der detaillierte Inhalt vonWie greife ich über eine PreferenceActivity in einer anderen Android-Aktivität auf SharedPreferences zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn