xmppframework: iPhoneXMPP: RootController 没有更新朋友的存在
Posted
技术标签:
【中文标题】xmppframework: iPhoneXMPP: RootController 没有更新朋友的存在【英文标题】:xmppframework: iPhoneXMPP: RootController not updated with friend's presence 【发布时间】:2013-02-19 11:29:55 【问题描述】:我尝试了 iPhoneXMPP 演示,但是当我的朋友在线或离线时,GUI 似乎没有更新。我修改了 nsfetchresultcontroller 只显示在线朋友:
...
[fetchRequest setPredicate:[NSPredicate predicateWithFormat:@"sectionNum == 0"]];
...
在 xcode 的控制台中,它显示它确实收到了我朋友的存在。但我看到 controllerDidChangeContent: 根本没有被调用。 (实际上,我看到它有时被调用,但随机且很少)。
当我更深入地调试时,我看到 XMPPRosterCoreDataStorage handlePresence:xmppStream 被调用,然后 managedObjectContextDidSave:notification 也被调用。所以一切似乎都是正确的。但是 resultfetchcontroller 并没有看到变化。
那么问题是什么?是不是我做错了什么? 谢谢。
【问题讨论】:
请提供fetchedResultsController
方法的代码。
【参考方案1】:
我刚刚测试了您的谓词:它工作得很好。
您是否正确初始化了 NSFetchedResultsController?您需要传递 XMPPRosterCoreDataStorage 的 NSManagedObjectContext。
【讨论】:
是的,目前,我正在使用 [appDelegate managedObjectContext_roster] 来初始化 fetch 控制器。以上是关于xmppframework: iPhoneXMPP: RootController 没有更新朋友的存在的主要内容,如果未能解决你的问题,请参考以下文章