我通过编辑 info.plist 文件更改了我的 nib 文件,并将 File's Owner 设置为我扩展 NSViewController 的类,但现在它给了我以上错误:
正在运行... 2012-04-06 15:11:45.552 Rooster[1251:a0f] 无法加载 nib 文件:RoosterView.xib,退出
Debugger stopped. Program exited with status value:1.(gdb)
我该如何解决?
我通过编辑 info.plist 文件更改了我的 nib 文件,并将 File's Owner 设置为我扩展 NSViewController 的类,但现在它给了我以上错误:
正在运行... 2012-04-06 15:11:45.552 Rooster[1251:a0f] 无法加载 nib 文件:RoosterView.xib,退出
Debugger stopped. Program exited with status value:1.(gdb)
我该如何解决?
此问题的另一个可能原因是指定“MainMenu.xib”而不是“MainMenu”。也就是说,不包括 .xib 扩展名。
在 Xcode 中输入文件名时,它将自动完成并包含导致错误的 .xib。
我今天也发生了同样的错误。通过在主界面下的项目设置中删除 .xib 扩展名来修复它。
图片教程:
改变这个:
对此:
希望这可以帮助某人:)
更改您的 info.plist 文件,以便它加载您的原始 nib(大概是 MainMenu.xib),并确保文件的所有者是NSApplication
. 在您编写应用程序的绝大多数情况下,这就是您想要的方式。
接下来,在您的 RoosterView.m(我认为它是一个子类)中,使用's方法NSViewController
加载您的 RoosterView.xib 。NSViewController
– initWithNibName:bundle:
最后,在您恢复的 MainMenu.xib 中,将自定义视图对象添加到您的窗口。将自定义视图的类设为您的 RoosterView。
祝你在你的努力中好运。并且在将来,每当您创建应用程序时,请不要乱用应用程序的 xib 的 File's Owner 设置,除非您感到非常沮丧。