2017-05-08 39 views
0

我忙于在iOS 8 + CoreData中使用Swift 3创建iOS应用程序。CoreData - 使用NSManagedObjects填充tableview,但只保存一个

我有一个桌面视图的任务。这些任务从API中检索,JSON中的每个任务都插入到一个新的NSManagedObject“任务”中。所有这些“Task”NSManagedObjects都存储在一个数组中,这样我就拥有了一个包含JSON中所有“Task”对象的数组。然后我使用“Task”NSManagedObjects数组填充tableview。但是,当用户点击一行时,必须将该单个“任务”对象保存在CoreData中(在“任务”实体中)。

如何在不保存所有任务但仅保存用户点击的任务的情况下使用“任务”NSManagedObjects填充tableview?

任何人都可以指向正确的方向吗?

回答

1

您可以使用中间自定义结构。

  • 将JSON解析为自定义结构。
  • 使用此结构作为表视图的模型。
  • 当用户点击行映射的结构实例到NSManagedObject并保存它。
+0

有没有办法自动将结构实例映射到NSManagedObject,其中的关系?或者我必须手动为每个值做? – Bram

+1

您必须以编程方式执行此操作。有第三方映射程序库,但我怀疑这样做的好处,因为从技术上讲,它们也是手动执行的 – vadian