Отвечая на обновления предпочтений в Android - PullRequest
3 голосов
/ 01 мая 2010

Я вызываю PreferenceActivity из другого действия, а затем обновляю состояние приложения (т.е. изменяю размер шрифта) на onActivityResult на основе изменений предпочтений.

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

Какой лучший или правильный способ сделать это?

Ответы [ 2 ]

7 голосов
/ 01 мая 2010

У любого Activity (или другого компонента), который заботится об изменениях предпочтений, зарегистрируйте прослушиватель изменений предпочтений через registerOnSharedPreferenceChangeListener(). Затем, когда предпочтения меняются каким-либо образом, они узнают об этом и могут соответственно реагировать.

0 голосов
/ 19 августа 2010

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

...