我有一个NSManagedObject
子类,其中absences
是NSMutableArray
@interface Record : NSManagedObject
@property (nonatomic, retain) id absences;
@end
我希望能够将项目添加到失踪数组;但是,如果执行
[myRecord.absences addObject:SomeObj
,则记录无法正确保存。 NSManagedObject
几乎不知道我更新了absences
数组。但是,如果我将
SomeObj
添加到某些localAray
中,然后设置myRecord.absences = localArray
,则NSManagedObject
可以正确保存。有人可以解释这种行为以及我该如何避免...谢谢
最佳答案
完全正确,在第一种情况下,您要更改NSManagedObject视场之外的对象。要解决此问题,请Apple doc says以下内容
对于可变值,您应该将值的所有权转移到Core Data,或实现自定义访问器方法以始终执行复制。
因此,用(copy)
声明属性就足够了。
关于iphone - 如何将对象添加到存储在Core Data iOS数据库中的NSMutableArray?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14616897/