在Android中响应偏好更新

在Android中响应偏好更新,android,android-activity,preferences,preferenceactivity,Android,Android Activity,Preferences,Preferenceactivity,我正在从另一个活动调用PreferenceActivity,然后根据首选项更改在onActivityResult上更新应用程序状态(即:更改字体大小) 我想最好将状态更新逻辑放在PreferenceActivity中。这样我就不会在调用PreferenceActivity的每个活动中重复逻辑 最好或正确的方法是什么?让任何关心首选项更改的活动(或其他组件)通过RegisterOnSharedReferenceChangeListener()注册首选项更改侦听器。然后,当首选项以任何方式发生变化时

我正在从另一个活动调用PreferenceActivity,然后根据首选项更改在onActivityResult上更新应用程序状态(即:更改字体大小)

我想最好将状态更新逻辑放在PreferenceActivity中。这样我就不会在调用PreferenceActivity的每个活动中重复逻辑


最好或正确的方法是什么?

让任何关心首选项更改的
活动(或其他组件)通过
RegisterOnSharedReferenceChangeListener()
注册首选项更改侦听器。然后,当首选项以任何方式发生变化时,他们会发现并做出相应反应。

首选项活动应处理所有首选项设置。您的其他活动应该在运行时读取这些设置,并相应地进行调整

哦。我甚至不知道它的存在。非常感谢,Commonware@Commonware+1用于一般指导,但更清晰、更易于实现。很棒的方法+1。此外,在关闭/销毁组件时,必须调用
取消注册共享首选项ChangeListener