Dev*_*ang 1 core-data objective-c nsmanagedobject nsmanagedobjectcontext ios
我正在尝试创建一个应用程序,用户可以在其中编辑managedObject视图中的a 属性,并选择Done保留更改或Cancel撤消更改.
为了实现这种行为,我打算做以下事情 -
managedObject,创建一个backupManagedObject原始的克隆managedObject.backupManagedObject是在单独的子ManagedObjectContext中创建的.managedObject.Done按下,原始文件managedObject被保留,备份被删除Cancel按下,将backupManagedObject其克隆为原始文件managedObject并删除备份我的问题是,一旦我完成了backupManagedObject,我怎么能删除childManagedObjectContext哪个将没有更多的托管对象,我不打算再使用它们(对于每个新的视图控制器,我打算只创建一个新的子托管对象上下文并在视图控制器完成后将其销毁).
你应该以相反的方式做到这一点:
当您加载编辑的视图控制器时,创建新的托管对象上下文,它是您的主要子项的子项,我们称之为editingMOC.
对editMOC进行编辑,如果要保留它们,请保存editingMOC(这会将更改传播到mainMOC),然后保存mainMOC以将数据保存到持久性存储中.
如果您希望放弃对editingMOC所做的更改,只需不保存它们并让上下文被取消删除.
| 归档时间: |
|
| 查看次数: |
1003 次 |
| 最近记录: |