2

我开始涉足 Mac OS X 开发,但我遇到了一个问题,我在过去三个小时内一直无法找到解决方案(我已经用谷歌搜索了很长时间)。

测试应用程序:
我有一个应用程序MainMenu.xib,它显示一个窗口 - 到目前为止一切都很好。我创建了另一个 XIB 和NSViewController子类,其中包含我想在主窗口中显示的视图。我使用以下代码加载视图并将其插入主窗口:

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
    // Insert code here to initialize your application
    self.compartmentViewController = [[SelectCompartmentViewController alloc] initWithNibName:@"SelectCompartmentViewController" bundle:nil];
    [self.compartmentViewController.view setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable];
    [self.compartmentViewController.view setFrame:[self.contentArea bounds]];              
}

compartmentViewController是一个属性,self.contentArea是主窗口上的一个自定义视图 - 就像一个占位符。

到目前为止,这工作正常。

问题
然后我决定检查本地化功能。我已经本地化了几个字符串和两个 XIB。起初,我对没有看到任何本地化值感到有些困惑。直到我发现我必须清理项目 - 从那时起我在运行时遇到以下错误:

2013-03-19 22:48:59.763 词汇框[10160:303] 无法找到名为:SelectCompartmentViewController 在捆绑路径中的笔尖:(空)
2013-03-19 22:48:59.764 词汇框[10160:303] -[ NSViewController loadView] 无法加载“SelectCompartmentViewController”笔尖。

建议的解决方案我试过无济于事

  1. 清理项目没有帮助
  2. 检查构建配置 - 是的,捆绑资源似乎没问题
  3. 是的,如果我删除我的子视图的本地化并重新添加原始 XIB,一切都很好(当然视图没有本地化)

帮助

4

3 回答 3

7

对于为什么会发生这种情况,我没有答案。但是我遇到了同样的问题,我通过关闭 xCode 并再次打开它来解决它,相信我。

于 2013-04-16T20:11:28.393 回答
1

尝试以下操作:

  • 选择你的项目
  • 选择“构建阶段”
  • 在“复制捆绑资源”中添加新的 xib

在此处输入图像描述

于 2013-03-25T15:41:16.677 回答
0

我刚刚遇到了同样的问题,并且能够通过执行以下操作来解决它:

1)在项目导航器中选择XIB

2)在文件检查器中,取消选中本地化下的任何项目(它会提示您 - 确保未选中“从磁盘删除文件”,然后按删除)

3)手动将XIB添加回项目中

于 2013-03-28T19:47:42.100 回答