Mendapatkan SharedPreferences daripada PreferenceActivity
Dalam Android, PreferenceActivity menyediakan cara yang mudah untuk mengurus pilihan pengguna melalui fail XML. Walau bagaimanapun, mengakses SharedPreferences yang digunakan oleh PreferenceActivity dalam aktiviti lain boleh mengelirukan.
Dokumentasi PreferenceActivity menyatakan bahawa tetapan akan disimpan secara automatik ke SharedPreferences. Untuk mendapatkan semula SharedPreferences untuk PreferenceActivity, gunakan coretan kod berikut:
import android.preference.PreferenceManager; SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
Kaedah getDefaultSharedPreferences mengembalikan SharedPreferences lalai yang digunakan oleh PreferenceActivity. Anda kemudiannya boleh mengakses nilai keutamaan menggunakan:
prefs.getBoolean("keystring", true);
Memahami Keutamaan Dikongsi
Keutamaan Dikongsi menyediakan cara mudah untuk menyimpan dan mendapatkan pasangan nilai kunci merentas komponen yang berbeza sesuatu permohonan. Ia boleh sama ada dikongsi merentas semua komponen atau khusus untuk aktiviti tertentu.
Keutamaan Dikongsi
Untuk pilihan dikongsi, anda boleh menggunakan kaedah getSharedPreferences kelas Konteks untuk tetapkan nama fail lalai atau tentukan nama fail tersuai. Cara yang disyorkan ialah menggunakan mod lalai:
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
Untuk menyimpan nilai, gunakan objek SharedPreferences.Editor:
preferences.edit().putInt("storedInt", value).commit();
Keutamaan Aktiviti
Apabila anda memerlukan keutamaan khusus aktiviti, gunakan kaedah getPreferences kelas Aktiviti. Kaedah ini menggunakan kaedah getSharedPreferences dengan nama kelas aktiviti sebagai nama fail keutamaan:
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
Menyimpan nilai adalah serupa dengan keutamaan dikongsi:
preferences.edit().putInt("storedInt", value).commit();
Untuk lebih banyak contoh dan butiran tentang pilihan , rujuk dokumentasi Storan Data Android rasmi.
Atas ialah kandungan terperinci Bagaimanakah Saya Mengakses SharedPreferences daripada Android PreferenceActivity?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!