Xcode app委托给每个视图控制器

时间:2012-06-19 12:45:14

标签: iphone xcode delegates

我一直在研究Xcode教程而无法解决这个问题。教程是here

我得到的错误是:

  

+ entityForName:无法找到实体名称为“Contact”的NSManagedObjectModel'

在这一行(我已将目的地更改为联系人):

Contact *contact = (Contact *)[NSEntityDescription insertNewObjectForEntityForName:@"Contact" inManagedObjectContext:managedObjectContext];

我很确定问题是因为我还没有完成11号点,因为我不确定如何使用Xcode 4.3.2和故事板。有谁知道吗?

2 个答案:

答案 0 :(得分:1)

您可以将上下文传递给下一个viewcontroller,就像在Stephens的回答中一样。但是,您还必须记住通过添加

将context属性添加到新的viewcontrollers
@property(nonatomic,retain) NSManagedObjectContext *context;

到你的头文件和

@synthesize context;

到您的实施文件。

您可以执行以下操作来检查是否获得上下文:

在viewdidload中:

if (context == nil) 
{ 
    context = [(YOURAppDelegate *)[[UIApplication sharedApplication] delegate] managedObjectContext]; 
}

如果这没有帮助。尝试重置你的模拟器,因为当你搞乱Coredata时它似乎有很多错误。

我希望这有帮助!

答案 1 :(得分:0)

假设存在权利,您似乎更有可能从第10点错过以下内容:

enterDataViewController.managedObjectContext = self.managedObjectContext;

在app delegate中没有正确设置或者您的managedObjectContext。