我想要建立一个类似于ContactsTableViewController的GroupMe。它显示了我所有的通讯簿联系人,甚至哪些是GroupMe用户。

看来不能自定义ABPeoplePickerNavigationController。
ABAddressBook & ABPerson访问通讯簿联系人,用自定义UITableViewController显示它们的最佳方法是什么?
我不想仅仅将所有通讯簿联系人加载到一个NSArray中,因为这可能会扼杀内存(我知道有成千上万个通讯簿联系人在他们的手机上)。我习惯于对这样的大型结果集使用Core & NSFetchedResultsController。但是,要做到这一点,我必须在核心数据中创建一个ABPerson模型,这很容易,但保持它与地址簿同步似乎很有挑战性,而且有点愚蠢。发布于 2011-11-07 14:31:45
我是GroupMe iOS开发人员之一,我们就是这样做的。
kABPersonModificationDateProperty的任何kABPersonModificationDateProperty。这使得更新速度快得多。NSFetchRequests,并且在任何时候都可以获得它们的关系细节(因此我们可以在屏幕截图中显示本地联系人是GroupMe用户等等)。我们也使用NSFetchedResultsController,这样如果后台操作发现任何新的联系人/关系,我们就可以在UI中得到反映的更新。
唯一的其他技巧是确保您有您的获取请求预取所有关系,这样加载关系的原因不会击中核心数据,因为您滚动填充错误。
是的,虽然将核心数据n‘’sync与用户的地址簿放在一起要比愚蠢得多,但这是值得的,这样您就可以轻松地访问它,也可以方便地查询需要了解所有这些内容的查询。
https://stackoverflow.com/questions/8029501
复制相似问题