什么是核心数据生成的访问者?

时间:2013-07-19 06:22:59

标签: ios objective-c core-data

当我创建具有一对多关系的Core Data对象时,我得到了一些方法(CoreDataGeneratedAccessors)。我们需要实施这些方法吗? 自动生成的方法如下:

- (void)addCirqitsObject:(Cirqit *)value;
- (void)removeCirqitsObject:(Cirqit *)value;
- (void)addCirqits:(NSSet *)value;
- (void)removeCirqits:(NSSet *)value;

2 个答案:

答案 0 :(得分:9)

您不必实施这些方法,但您可以。如果不这样做,CoreData将为您动态生成它们。

如果要覆盖默认实现,请阅读Core Data Programming Guide (Custom To-Many Relationship Accessor Methods)以查找示例实现。

覆盖的原因可能是在添加或删除新Cirqit对象之前或之后触发其他计算或更新。 但请注意不要更改示例实现代码,只需添加自定义代码 - 否则可能会破坏您的关系处理。

答案 1 :(得分:0)

您可以覆盖核心数据生成的访问者。你必须注意一些特殊的事情,比如调用willChangeValueForKey和didChangeValueForKey,但除了覆盖访问器之外的其他东西几乎都是一样的。

提供者: - https://stackoverflow.com/a/9659750/1865424

我认为这些链接可以帮助你..

http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CoreData/Articles/cdAccessorMethods.html