2012-04-06 150 views
0

我通过编辑Info.plist文件改变了我的笔尖文件,并设置文件的所有者延长NSViewController我的课,但现在它给了我上面的错误:的Objective-C无法加载笔尖文件:RoosterView.xib

Running… 2012-04-06 15:11:45.552 Rooster[1251:a0f] Unable to load nib file: RoosterView.xib, exiting

Debugger stopped. 
Program exited with status value:1.(gdb) 

我该如何解决这个问题?

+0

RoosterView.xib – 11684 2012-04-06 14:23:58

+0

金鸡是荷兰的话,我我不是在谈论一只雄鸡。 – 11684 2012-04-06 14:24:42

+0

我假设文件RoosterView.xib实际上存在于您的项目中? – lnafziger 2012-04-06 14:26:33

回答

3

更改您的info.plist文件,使其加载您的原始笔尖(大概是MainMenu.xib),并确保文件的所有者为NSApplication。在你编写应用程序的绝大多数情况下,这是你想要的。

接着,在您的RoosterView.m(这我认为是一个NSViewController子类),装入用NSViewController– initWithNibName:bundle:方法您RoosterView.xib。

最后,在您恢复的MainMenu.xib中,向您的窗口添加一个Custom View对象。制作您的RoosterView的自定义视图类。

祝你好运。而且在将来,无论何时你创建一个应用程序,请不要在你的应用程序的xib文件的所有者设置中乱用,除非你有很多的挫败感。

+0

但是,我不会得到2个主窗口吗? – 11684 2012-04-06 14:50:03

+0

链接到示例? – 11684 2012-04-06 14:51:06

+0

好吧,但你的RoosterView只是一个视图。你需要一个窗口来显示它,是吗? – trudyscousin 2012-04-06 14:51:24

18

此问题的另一个可能的原因是指定“MainMenu.xib”而不是“MainMenu”。也就是说,不要包含.xib扩展名。

当在Xcode中输入文件名时,它会自动完成并包含导致错误的.xib文件。

+0

非常感谢! – wiruzx 2013-12-14 21:13:47

+0

我有同样的问题,事实证明这是原因。谢谢! – lukecampbell 2013-12-15 17:27:55

+0

优秀的建议!谢谢。 – Bram 2014-02-03 06:12:52

5

今天发生了同样的错误。 修复了在主界面下的项目设置中删除.xib扩展名的问题。

图片教程:

更改此: enter image description here

要这样: enter image description here

希望这可以帮助别人:)

+0

+1为包含的图像。立刻帮助我解决问题。 – 2014-05-28 20:05:21