没有调用awakeFromFetch

Ban*_*ong 1 iphone objective-c

Core Data在我的应用程序中运行得相当顺利.我可以存储和检索所需的大部分数据.然而,

  • 一个对象(ObjectW)命中awakeFromInsert,但从不执行awakeFromFetch - 数据永远不会被归档.
  • 另一个对象(ObjectX)执行awakeFromFetch - 并且数据未归档.

ObjectW和ObjectX都存储在ObjectY中.两者都没有显式调用awakeFromFetch,只是对某些属性的引用.

- (void) awakeFromInsert {
    [super awakeFromInsert];
}


- (void) awakeFromFetch {
    NSLog(@"AWAKE FROM FETCH");
    [super awakeFromFetch];
}
Run Code Online (Sandbox Code Playgroud)

有些不对劲.我在哪里看?

tim*_*man 6

这里讨论很好

http://www.cocoabuilder.com/archive/cocoa/154453-awakefromfetch-when-it-is-called.html

总结:检查方法是否大写并拼写正确.如果是这样,则在访问模型中定义的属性之前,实际上不会执行awakeFromFetch.请注意,它可以是实际属性或定义为瞬态.

祝好运!