2010-05-13 39 views
0

在我的项目中,我使用了tabBarController,然后在我的一个选项卡上添加了一个导航控制器。核心数据和TabViewController

我遇到的问题是这样的:如果我用这个代码在AppDelegate中:

  • (BOOL)申请:(UIApplication的*)应用程序didFinishLaunchingWithOptions:(NSDictionary的*)launchOptions {

    //应用程序启动后自定义的替代点

    [window addSubview:[rootController view]];

    [window makeKeyAndVisible];

    return YES; } 我的TabBar视图(这是在main.xib)来了,但是当我点击导航控制器的标签(这是使用核心数据)的应用程序崩溃,此错误的:

NSInternalInconsistencyException '原因是:' + entityForName:未能找到NSManagedObjectModel的实体名称“温泉

于是,我找到了AppDelegate的这段代码: - (空)的applicationDidFinishLaunching:(UIApplication的*)应用程序{

NSManagedObjectContext *context = [self managedObjectContext]; 
if (!context) { 
    // Handle the error. 
} 

RootViewController *rootViewController = (RootViewController *)[navController topViewController]; 
rootViewController.managedObjectContext = self.managedObjectContext; 

[window addSubview:[navController view]]; 
[window makeKeyAndVisible]; 

} 但是,当然,它会加载导航控制器视图并忽略main.xib和标签栏控制器。

所以,我需要知道如何使用这最后的代码,但加载标签栏和main.xib。我试图改变navController我rootController(这是我tabBarController属性,但它不喜欢的“topViewController”,这是与导航控制器关联。

感谢,海梅

回答

0

你需要阅读错误信息更加仔细错误在您的核心数据实体名称中,而不是在您的视图控制器中

+entityForName: could not locate an NSManagedObjectModel for entity name 'HotSprings