我有一个应用程序,它将数据存储在核心数据托管对象中。这些对象包含几个属性 - NSString 信息,NSNumber 布尔值和 Transformable 数据数组。
数据点.h:
@property (nonatomic, retain) id dataArray;
@property (nonatomic, retain) NSString * note;
@property (nonatomic, retain) NSNumber * bool;
数据点.m:
@dynamic dataArray;
@dynamic note;
@dynamic bool;
应用程序用户可以进行更改并存储或取消它们。要撤消所有更改,我调用 [managedObjectContest rollback] 方法。我还没有设置额外的 undoManager。对于简单的数据类型(如 NSString 或 NSNumber),这可以正常工作。调用回滚后,所有条目都处于最后保存状态。但这似乎不适用于存储的数组。调用回滚后,我仍然只能得到更改后的值。只有在我重新启动应用程序后,才会显示原始(上次保存的)数据。
我必须做什么才能使回滚对复杂数据起作用?
谢谢你和亲切的问候!