我有一个显示距离和体积的应用程序。我有一个 SettingsFragment,允许我选择距离、英里或公里以及体积、加仑或升的单位。单位之间的更改有效,但不是马上,我必须翻转手机或重置应用程序才能看到更改。我希望设置更改立即反映在主要活动上,但我不确定如何完成此操作。我做了一些研究并找到了一个可能的解决方案:设置指南建议我应该实现 OnSharedPreferenceChangeListener 接口来监听更改。但这是在 PreferenceFragment 上实现的,而不是在不同的活动上实现的。这是一个类似的解决方案。
我对监听主要活动设置更改的正确方法以及在更改发生时如何刷新视图感到困惑。谁能澄清一下?