objective-c无法加载nib文件:RoosterView.xib

时间:2012-04-06 14:19:30

标签: objective-c xcode interface-builder xib nib

我通过编辑info.plist文件更改了我的nib文件,并将File的所有者设置为扩展NSViewController的类,但现在它给了我上面的错误:

  

...运行       2012-04-06 15:11:45.552 Rooster [1251:a0f]无法加载nib文件:RoosterView.xib,退出

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

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:18)

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

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

答案 1 :(得分:5)

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

图片教程:

改变这个: enter image description here

对此: enter image description here

希望这有助于某人:)

答案 2 :(得分:3)

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

接下来,在您的RoosterView.m(我将其作为NSViewController子类)中,使用NSViewController的{​​{1}}方法加载您的RoosterView.xib。

最后,在复活的MainMenu.xib中,将自定义视图对象添加到窗口中。使自定义视图的类与您的RoosterView类相同。

祝你好运。并且在将来,无论何时创建应用程序,请不要乱用应用程序的xib文件所有者设置,除非您感到非常沮丧。