我的第一个Android应用程序中有2个UI活动(带有片段)以及一个SettingsActivity(源自PreferenceActivity)。它“有效”,但我想确保我正在做正确的事情,因为用户在视图和偏好之间流动。
具体来说 - 当我将'位置'偏好(当用户在SettingsActivity中)更改为其他邮政编码时,我希望该应用从服务中获取一些背景数据。但是,我需要在设置更改之前的任何视图中刷新UI(将新数据考虑在内)。
这样做是'正确的事' - 当邮政编码改变时,在PreferenceActivity的onPreferenceChangeListener()中做工作(获取后台数据),然后让前面的UI活动消耗数据(现在更新了)当用户返回时,onStart()方法中的数据源的单例抽象)?或者是否有更好的方法(例如,以某种方式捕获UI活动中的'首选项已更改',并在那里完成所有工作,而不是在PreferenceActivity中)。
希望这不是太抽象,我会共享代码,但是我必须做很多清理,我希望这就足够了。
提前致谢。
答案 0 :(得分:0)
我会将功能放入单独的MyCurrentZipcode
类
您可以创建一个方法MyCurrentZipcode.addOnZipcodeChanged()
,其中消费活动可以注册以获取有关更改的信息。