【发布时间】:2014-06-18 07:21:29
【问题描述】:
我有一个共享单例,其中包含有关当前用户及其会话的所有相关信息,通过对象 [IWSession session] 和 [IWSession session].currentUser。
当前用户(实际上是指登录应用程序的用户)可能通过 web 服务调用(由 iBeacon 触发,由其位置更改触发等)频繁更新其某些属性。 这意味着在应用程序的不同位置相应地更新 GUI,比如说 5 或 6 个类实例。
更新任何属性后立即更新应用中显示的信息的正确方法是什么?
我想过
1) 在自己的[IWSession session].currentUser 上添加 KVO,并为有关以下链接的所有属性添加 KVO
Key Value Observing - how to observe all the properties of an object?
2) KVO 会触发一个
[[NSNotificationCenter defaultCenter] postNotificationName:@"userUpdated" object:nil];
所有需要更新其布局的类都会听取该通知。
这是一个好方法吗? 还有什么建议吗?
【问题讨论】:
标签: ios objective-c nsnotificationcenter key-value-observing