Можно ли динамически изменять сводку EditTextPreference в Android?
Я настроил экран настроек для редактирования настроек в моем приложении. Я хотел бы вставить EditTextPreference, который содержит заголовок, такой как "установить ваше имя" и резюме, содержащее введенное имя.
Это возможно? заранее спасибо!
1 ответ
Решение
Конечно, вот короткий пример:
EditTextPreference etp = (EditTextPreference) findPreference("the_pref_key");
etp.setSummary("New summary");
Это требует, чтобы вы отобразили свои предпочтения либо из PreferenceActivity
или из PreferenceFragment
, поскольку findPreference()
это метод этих классов. Скорее всего, вы уже делаете это.
Чтобы изменить сводку каждый раз, когда пользователь изменяет фактическое предпочтение, используйте OnPreferenceChangeListener
и проверьте, изменился ли соответствующий ключ в обратном вызове. После того, как это изменилось, просто отредактируйте резюме как выше.