从 Android 中的 PreferenceActivity 获取 SharedPreferences
使用 PreferenceActivity 显示应用程序设置时,当用户交互时首选项会自动保存到 SharedPreferences和他们在一起。但是,从另一个 Activity 访问 SharedPreference 名称可能具有挑战性。
根据文档:
“要检索此 Activity 中的首选项层次结构将使用的 SharedPreferences 实例,请调用 getDefaultSharedPreferences( android.content.Context) 与与此位于同一包中的上下文
解决方案:
要从另一个 Activity 检索 SharedPreferences 名称,请使用以下代码:
import android.preference.PreferenceManager; SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
此代码检索SharedPreferences 实例使用应用程序的上下文,它与包的包匹配PreferenceActivity。
SharedPreferences 和 Activity-handled Preferences
SharedPreferences,如文档中所述,可以跨应用程序内的活动和服务使用,而活动处理的首选项特定于特定活动。
使用SharedPreferences
对于共享首选项,建议使用默认模式,不指定文件名:
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
但是,您也可以指定文件名:
SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);
检索存储的值:
int storedPreference = preferences.getInt("storedInt", 0);
存储值:
SharedPreferences.Editor editor = preferences.edit(); editor.putInt("storedInt", storedPreference); // value to store editor.commit();
使用活动处理的首选项
要使用特定于活动的首选项:
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
以上是如何从另一个 Android Activity 中的 PreferenceActivity 访问 SharedPreferences?的详细内容。更多信息请关注PHP中文网其他相关文章!