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 - 条形按钮项目未在 SWIFT 中显示

ios - uipageviewcontroller 禁用向右滑动

ios - 无法执行支持代码来读取进程中的 Objective-C 类数据。在真正的 iPhone 设备上

objective-c - 进入背景时,iOS拍摄快照的确切时间?

iphone - 如何在 iPhone 上将图像插入到 SQLite 中?

ios - 如何在 ios 中生成唯一序列?

ios - 更新多级 plist objective-c

swift - 如何知道两个异步函数何时完成?

swift - 使用按钮从 uicollectionviewCell 中删除单核心数据项

iphone - Core Data 不允许我删除没有关系对象的对象