本项目使用 Mogenerator 和 Magical Record。我已经找到了一个错误,awakeFromInsert
即被调用了两次。我假设我的每个上下文都有一次。这是一个问题,因为我需要像这样在这个 NSManagedObject 上监听 NSNotifications:
- (void)awakeFromInsert
{
// Listen for a return from background mode
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(enteringForeground:) name:UIApplicationWillEnterForegroundNotification object:nil];
}
但是 awakeFromInsert 被调用了两次,这很烦人。我想在第一次创建 NSManagedObject 时调用一次方法。
经过搜索这个解决方案似乎很有意义。但是,当使用 Mogenerator 和 MagicalRecord 时,我看不到如何将类别添加到 NSManagedObject。没有一些复杂的覆盖。
在 MagicalRecordMR_createEntity
通话中
if ([self respondsToSelector:@selector(insertInManagedObjectContext:)])
{
id entity = [self performSelector:@selector(insertInManagedObjectContext:) withObject:context];
return entity;
}
这个问题有更简洁的解决方案吗?