Core Data Managed Objects にデータを格納するアプリケーションがあります。これらのオブジェクトには、NSString としての情報、NSNumber としてのブール値、および Transformable としてのデータ配列など、いくつかのプロパティが含まれています。
dataPoint.h:
@property (nonatomic, retain) id dataArray;
@property (nonatomic, retain) NSString * note;
@property (nonatomic, retain) NSNumber * bool;
dataPoint.m:
@dynamic dataArray;
@dynamic note;
@dynamic bool;
アプリケーション ユーザーは、変更を加えて保存またはキャンセルできます。すべての変更を元に戻すには、[managedObjectContest ロールバック] メソッドを呼び出します。追加の undoManager を設定していません。単純なデータ型 (NSString や NSNumber など) の場合、これは正常に機能します。ロールバックが呼び出された後、すべてのエントリは最後に保存された状態になります。しかし、これは格納された配列では機能しないようです。ロールバックが呼び出された後も、変更された値のみを取得します。アプリケーションを再起動した後にのみ、元の (最後に保存された) データが表示されます。
複雑なデータに対してロールバックを機能させるにはどうすればよいですか?
よろしくお願いします!