Можно ли динамически изменять сводку EditTextPreference в Android?

Я настроил экран настроек для редактирования настроек в моем приложении. Я хотел бы вставить EditTextPreference, который содержит заголовок, такой как "установить ваше имя" и резюме, содержащее введенное имя.

Это возможно? заранее спасибо!

1 ответ

Решение

Конечно, вот короткий пример:

EditTextPreference etp = (EditTextPreference) findPreference("the_pref_key");
etp.setSummary("New summary");

Это требует, чтобы вы отобразили свои предпочтения либо из PreferenceActivity или из PreferenceFragment, поскольку findPreference() это метод этих классов. Скорее всего, вы уже делаете это.

Чтобы изменить сводку каждый раз, когда пользователь изменяет фактическое предпочтение, используйте OnPreferenceChangeListener и проверьте, изменился ли соответствующий ключ в обратном вызове. После того, как это изменилось, просто отредактируйте резюме как выше.

Другие вопросы по тегам