Я вызываю PreferenceActivity из другого действия, а затем обновляю состояние приложения (т. Е. Изменяя размер шрифта) на onActivityResult на основе изменений предпочтений.
Я думал, что было бы лучше поставить логику обновления состояния в PreferenceActivity. Таким образом, у меня нет дубликата логики в каждом действии, которое вызывает PreferenceActivity.
Каков наилучший или правильный способ сделать это?
Имейте какое-либо действие (или другой компонент), который заботится о изменениях предпочтений, регистрирует прослушиватель изменений предпочтений через registerOnSharedPreferenceChangeListener()
. Затем, когда предпочтения меняются каким-либо образом, они узнают об этом и могут соответственно реагировать.
PreferenceActivity должен обрабатывать все настройки предпочтений. В ваших других действиях следует прочитать, что эти настройки, когда они запускаются и соответствующим образом корректируются.