ios - 从 Core Data 中将一对多显示为一对一

标签 ios cocoa-touch core-data

我有一个人的联系人关系,其中有一对多的电话号码关系。

但是,我需要在 tableView 单元格中显示每个联系人的不同电话号码,因此在获取结果后我不确定如何做到这一点?

目前,我的逻辑是为不同的电话号码获取多个相同的联系人。

for (Contact *contact in fetchedRecords)
    {
        for (Phone *phone in contact.phoneNumbers)
        {
            [multipleContacts addObject:contact];
        }

    }

但是,我认为有更好的方法来获取联系人的此类记录,以获取每个电话号码条目的结果。

最佳答案

完成您要求的最简单方法是获取 Phone 对象而不是 Contact 对象。这样,tableView 中的每一行都将对应一个 Phone,然后您可以按照从 PhoneContact 的反向关系来获取名称显示。

关于ios - 从 Core Data 中将一对多显示为一对一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22700037/

相关文章:

ios - 我想将 iPad 资源更改为 iPhone

ios - 设备旋转度数

iphone - iOS 核心数据何时保存上下文?

ios - UIPickerView + 核心数据

ios - 核心数据 : Accessing an object used to mark sections in an NSFetchedResultsController

ios - 预期返回“UIFont?”的函数中缺少返回

ios nsarray/nsmutablearray 对自定义对象进行分组/求和

ios - 多个 whereKey :doesNotMatchKey:inQuery: in one query

iphone - 按下 UIBarButton 时 UIAction 表不会消失

objective-c - 如何计算 NSMutableArray 的每个内容的哈希 MD5?