如何使用编码动态更改android:summary的值?

时间:2011-09-22 18:09:03

标签: android string preferences preferenceactivity on-the-fly

我在settings.xml文件中有以下内容:

<PreferenceCategory android:title="@string/chiming_activity_time_category_title">

    <Preference android:title="@string/chiming_start_time_title"
        android:summary="@string/chiming_start_time_summary" android:key="preferences_start_time" />
</PreferenceCategory>

这是来自strings.xml文件:

<string name="chiming_start_time_summary">Allow chiming to be active STARTING from 

你能告诉我你是如何使用编码动态更改android:summary的值吗?

我需要根据用户在首选项屏幕中选择的内容显示不同的值。

感谢。

诚然, 伊马德

1 个答案:

答案 0 :(得分:2)

看一下文档? setSummary
您可以使用findPreference

在PreferenceActivity中找到您的偏好设置

Documetation of PreferenceActivity向您展示如何设置您的活动(您可能已经做过)。

onCreate结束时执行类似的操作:

findPreference("keyOfPreferenceWhichChanges").setOnPreferenceChangeListener(
        new OnPreferenceChangeListener() {
    public boolean onPreferenceChange(Preference preference, Object newValue) {
       if (somethingChanged) {
            findPreference("keyOfPreferenceWithNewSummary").setSummary("here's the change!");
       }
    }
}