Android Shared Preference特定的存储和检索

时间:2011-02-20 15:48:33

标签: android storage preferences

我使用

创建SharePreference
sharedPreference=getSharedPreferences(SHARED_PREFE_LOCATION, 0);
preferenceEditor=mSharedPreference.edit();
preferenceEditor.commit();

并使用Preference From Code SDK示例设置了一个屏幕。

现在我想要的是当用户使用生成的代码PreferenceScreen更改首选项时,更改应该反映在首选项文件SHARED_PREFE_LOCATION(来自我的代码变量。)而不是defaultSharedPreference中。

我该怎么做。

修改

我知道我可以在PreferenceChangeListener上实施并反映所需文件中的更改。但那很乏味。有没有直接的方式?

1 个答案:

答案 0 :(得分:1)

您可以使用PreferenceManager设置首选项名称。这将使您的首选项存储在您指定的位置。我建议您在向首选项活动添加任何首选项之前执行此操作,这样任何默认值都不会保存到默认位置:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getPreferenceManager().setSharedPreferencesName(SHARED_PREFE_LOCATION);
    addPreferencesFromResource(R.xml.preferences);
}