Как изменить значение android: сводка на лету с помощью кодирования? - PullRequest
0 голосов
/ 22 сентября 2011

У меня есть следующее в файле 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: сводка на лету с использованием кодирования?

Мне нужно, чтобы он отображал разные значения в зависимости от того, что пользователь выбирает на экране настроек.

Спасибо.

Действительно, Имад

1 Ответ

2 голосов
/ 22 сентября 2011

Взглянул на документацию? setSummary
Вы можете найти свои предпочтения в PreferenceActivity с помощью findPreference

Документирование PreferenceActivity показывает, как настроить свою деятельность (которую вывероятно сделал).

Сделайте что-нибудь подобное в конце onCreate:

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