代码之家  ›  专栏  ›  技术社区  ›  Reed Olsen

无法在Xcode项目中创建新的XIB文件

  •  3
  • Reed Olsen  · 技术社区  · 15 年前

    这是一个愚蠢的…

    我朋友刚在他的雪豹MacBook Pro上下载了iPhone SDK。无论他创建什么样的项目(基于窗口、基于视图等等),他都不能创建或使用自己的XIB文件。在他添加新的XIB文件之前,该项目将编译并运行良好。

    以下是一些症状:

    • 当他在Xcode中选择一个预先生成的XIB(如mainwindow.xib)时,在右手边不会显示预览。双击此文件将在Interface Builder中打开(这是正确的行为)。
    • 当他选择自己的自定义XIB时,预览窗格显示XIB的XML内容。双击他的定制XIB将在Xcode中打开XML文件——就像它是一个标准代码文件(这是顶起的)。
    • 从finder打开他的自定义XIB会在Interface Builder中打开它。
    • 在构建应用程序时,构建警告将说明“警告:没有规则来处理sourcecode.xib类型的文件/path/to/customxib for architecture i386”
    • 在运行时,他得到错误:

      由于未捕获异常“nsInvalidArgumentException”,正在终止应用程序,原因:“-[uiviewController _LoadViewFromNibNamed:Bundle:]无法加载名为“MyCustomXib”的Nib。

    我们已经从命令行中卸载了xcode并重新安装。我已经证实这是他的机器的正确版本。我被难住了!

    5 回复  |  直到 14 年前
        1
  •  1
  •   Mark    14 年前

    是的,我也遇到了这个问题,还把Directoy从Tiger升级到了Snow Leopard。修复方法是将NIB文件的文件类型从sourceCode.xib更改为file.xib(控制单击NIB文件,选择“获取信息”,然后在下拉列表中修改“文件类型”。

        2
  •  1
  •   Peter Hosey    15 年前

    错误…

    警告:没有处理文件的规则 /路径/到/自定义类型 用于架构i386的sourceCode.xib”

    ……建议NIB在“编译源代码”构建阶段出于某种原因。打开目标,然后打开编译源代码,查看NIB是否列在那里。如果是,请将其移动到“复制捆绑资源”并尝试再次编译。

        3
  •  0
  •   Dave DeLong    15 年前

    尝试将XIB的文件类型从“sourcecode.xib”更改为“file.xib”。sourcecode.xib“似乎会尝试将该文件视为源文件,而不是(默认)xib文件。

        4
  •  0
  •   Reed Olsen    15 年前

    这完全是一种逃避,但在使用Xcode、OSX、终端之后,我们发现没有任何进展,我们决定擦掉机器,重新开始。这个bug可能是直接从老虎升级到雪豹的结果,还有一些奇怪的遗留设置。

        5
  •  0
  •   Geir Haagensen    14 年前

    似乎我的XIB文件在由文件创建时使用了错误的文件信息保存->新文件->在Xcode中创建uiviewController子类。

    当我将文件信息更改为与mainwindow.xib相同的文件信息,并将其从目标编译文件夹中移出时,它工作得很好;既编译了文件信息,又在Interface Builder中启动了文件信息。

    附言:我也直接从老虎升级到雪豹,所以这可能是一个混合xcode设置的候选人?