无法在包中加载NIB:'使用故事板时的NSBundle
问题描述:
我在使用我的应用一段时间时出现以下错误。通常需要50到100次运动才能造成坠毁。虽然我正在使用故事板,但我没有理解它,这是一个NIB错误。无法在包中加载NIB:'使用故事板时的NSBundle
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason:
'Could not load NIB in bundle: 'NSBundle
</Users/me/Library/Application Support/iPhone Simulator/5.0/Applications/GUID/appname.app>
(loaded)' with name 'MainStoryboard_iPhone.storyboardc/q8p-MH-tsT-view-acD-hJ-g0C''
我不是100%确定从哪里开始看,但我认为这意味着故事板是腐败的?
我翻遍了所有的源代码,并且我没有任何字符串“nib”,所以没有nibWithNibName调用等等。我也没有MainWindow.xib,尽管我尝试了创建一个。我不确定当我使用故事板时是否可以将它设置为主界面。有一个参考的.xcodeproj/project.pbxproj文件中的笔尖,但是:
/* Begin PBXBuildRule section */
148BDD4C14AE8D5E002C30ED /* PBXBuildRule */ = {
isa = PBXBuildRule;
compilerSpec = com.apple.compilers.proxy.script;
fileType = wrapper.nib;
isEditable = 1;
outputFiles = (
);
script = "$(DEVELOPER_BIN_DIR)/ibtool\n";
};
我在Xcode 4.2使用故事板。我的主要故事板设置为MainStoryboard_iPhone,其文件名为MainStoryboard_iPhone.storyboard。
该崩溃发生在iOS 5模拟器中。
答
这个问题似乎已经在评论区回答了。在这里重新发布问题显示为有答案。 - gs。
回答评论复制:
有一个第三方组件内存泄漏。一旦资源耗尽,它会因上面的错误而崩溃。几周的QA/Beta测试证实它已经消失。谢谢。 - 茬跳线1月24日2:29
答
我以前有过这个问题。我的笔尖的名称与我的视图控制器的名称不同,而使用- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
作为我的初始化名称。
你好,欢迎来到SO。如果您使用4个空格缩进开始段落,则将其格式化为代码。我已经为你纠正了这个问题。 – jrturton 2011-12-31 16:40:30
关于您的问题,故事板将在加载新视图时代表您在后台调用loadnibnamed或类似内容。如果您查看故事板中的身份检查器,您将看到一个名为对象ID的字段 - 其中一个应与您在错误中看到的部分字符串(q8p ...)匹配。这应该缩小它试图加载的内容。 – jrturton 2011-12-31 16:45:07
如果您将故事板作为源代码打开,您可以直接搜索它。 – jrturton 2011-12-31 16:46:54