1

我使用 Eclipse 中的向导创建了一个新的设置活动。我想知道如何访问反映用户选择的值。特别是一个复选框选项。

它产生的代码如下:

/src/com/example/myapp/SettingsActivity.java:

@Override
protected void onPostCreate(Bundle savedInstanceState) {
    super.onPostCreate(savedInstanceState);
    setupSimplePreferencesScreen();
}
private void setupSimplePreferencesScreen() {
    addPreferencesFromResource(R.xml.pref_general);
    //...
}

res/xml/pref_general.xml:

<CheckBoxPreference
    android:defaultValue="true"
    android:key="example_checkbox"
    android:summary="@string/pref_description_social_recommendations"
    android:title="@string/pref_title_social_recommendations" />

该向导创建了一个相当大的示例,所以我不确定我是否复制/粘贴了所有相关代码,但我花了很长时间,我很确定这是关于它的,(除了字符串 xml文件)。

如何从另一个活动中访问复选框的值?我猜我需要使用 SharedPreferences 对象,但我不知道我将使用什么键来访问数据,因为我在代码中找不到任何常量?谢谢

4

1 回答 1

3
PreferenceManager.getDefaultSharedPreferences(context).
getBoolean(example_checkbox, defaultValue);

您使用的密钥是您在该android:key字段中指定的密钥

于 2014-08-22T09:37:32.800 回答