Rumah >Java >javaTutorial >Bagaimanakah Saya Mengakses SharedPreferences daripada PreferenceActivity dalam Aktiviti Android Lain?

Bagaimanakah Saya Mengakses SharedPreferences daripada PreferenceActivity dalam Aktiviti Android Lain?

Patricia Arquette
Patricia Arquetteasal
2024-12-03 03:45:10270semak imbas

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

Mendapatkan SharedPreferences daripada PreferenceActivity dalam Android

Apabila menggunakan PreferenceActivity untuk memaparkan tetapan aplikasi, keutamaan disimpan secara automatik ke SharedPreferences semasa pengguna berinteraksi bersama mereka. Walau bagaimanapun, mengakses nama SharedPreference daripada Aktiviti lain boleh mencabar.

Menurut dokumentasi:

"Untuk mendapatkan semula contoh SharedPreferences yang akan digunakan hierarki keutamaan dalam aktiviti ini, panggil getDefaultSharedPreferences( android.content.Context) dengan konteks dalam pakej yang sama seperti ini aktiviti."

Penyelesaian:

Untuk mendapatkan semula nama SharedPreferences daripada Aktiviti lain, gunakan kod berikut:

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

Kod ini mendapatkan semula Contoh SharedPreferences menggunakan konteks aplikasi, yang sepadan dengan pakej PreferenceActivity.

SharedPreferences dan Keutamaan dikendalikan Aktiviti

SharedPreferences, seperti yang dinyatakan dalam dokumentasi, boleh digunakan merentas aktiviti dan perkhidmatan dalam aplikasi, manakala pilihan dikendalikan aktiviti adalah khusus untuk aktiviti tertentu.

Menggunakan SharedPreferences

Untuk pilihan dikongsi, adalah disyorkan untuk menggunakan mod lalai tanpa menyatakan nama fail:

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);

Walau bagaimanapun, anda juga boleh menentukan nama fail:

SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);

Untuk mendapatkan semula nilai yang disimpan:

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

Untuk menyimpan nilai:

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

Menggunakan Keutamaan dikendalikan Aktiviti

Untuk menggunakan pilihan khusus untuk aktiviti:

SharedPreferences preferences = getPreferences(MODE_PRIVATE);

Atas ialah kandungan terperinci Bagaimanakah Saya Mengakses SharedPreferences daripada PreferenceActivity dalam Aktiviti Android Lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn