我通过编辑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)
我该如何解决这个问题?
答案 0 :(得分:18)
此问题的另一个可能原因是指定“MainMenu.xib”而不是“MainMenu”。也就是说,不要包含.xib扩展名。
在Xcode中输入文件名时,它会自动完成并包含导致错误的.xib。
答案 1 :(得分:5)
今天发生了同样的错误。 通过删除主界面下的项目设置中的.xib扩展名来修复它。
图片教程:
改变这个:
对此:
希望这有助于某人:)
答案 2 :(得分:3)
更改您的info.plist文件,以便加载原始笔尖(可能是MainMenu.xib),并确保文件所有者为NSApplication
。在你编写应用程序的绝大多数情况下,这就是你想要的。
接下来,在您的RoosterView.m(我将其作为NSViewController
子类)中,使用NSViewController
的{{1}}方法加载您的RoosterView.xib。
最后,在复活的MainMenu.xib中,将自定义视图对象添加到窗口中。使自定义视图的类与您的RoosterView类相同。
祝你好运。并且在将来,无论何时创建应用程序,请不要乱用应用程序的xib文件所有者设置,除非您感到非常沮丧。