【发布时间】:2009-07-10 10:19:04
【问题描述】:
在我的基于 SDK 3.0 核心数据的应用程序中,我有一个标签栏控制器管理 4 个标签。有时,显然是随机的,当我启动该应用程序时,它会崩溃并显示以下消息:
由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“不允许直接修改由标签栏控制器管理的标签栏。”
但是,我没有在我的代码中修改任何选项卡,但以下选项除外。实际上,选项卡中的所有导航控制器或控制器都是使用 IB 设置的,在我的代码中,我已将其中两个声明为插座,因为我需要在我的应用程序委托 applicationDidFinishLaunching() 方法中访问它们以设置它们的核心数据 managedObjectContext 如下:
[self managedObjectContext];
[self managedObjectModel];
[self persistentStoreCoordinator];
[rootViewController retain];
rootViewController.managedObjectContext = self.managedObjectContext;
这不正确吗?如果有,为什么?
我在网上看到的问题的唯一参考在这里:
http://discussions.apple.com/thread.jspa?messageID=9716886
但是,即使在 IB 中从头开始删除并重新创建标签栏控制器后,问题仍然存在。
有什么线索吗? 提前致谢。
【问题讨论】:
标签: iphone iphone-sdk-3.0