Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios .xib文件不在编译源代码生成阶段,但仍正确生成;这怎么可能?_Ios_Xcode_Build Process_Xib_Nib - Fatal编程技术网

Ios .xib文件不在编译源代码生成阶段,但仍正确生成;这怎么可能?

Ios .xib文件不在编译源代码生成阶段,但仍正确生成;这怎么可能?,ios,xcode,build-process,xib,nib,Ios,Xcode,Build Process,Xib,Nib,当您从包含.xib文件的Xcode模板开始时,该.xib文件将在编译源代码构建阶段列出。这对我来说很有意义,因为在构建过程中,需要将.xib文件转换为.nib文件(使用ibtool),而且是这样 但是在重命名我的.xib文件并添加一些新文件时,我最终遇到了这样的情况:编译源代码构建阶段没有列出我的.xib文件。相反,它们都列在复制文件生成阶段。我没能解决这个问题。(别让我开始这么做。) 但事实证明我不需要修理它!当我构建时,我可以查看构建的应用程序包,我看到它有.nib文件,而不是.xib文件。

当您从包含.xib文件的Xcode模板开始时,该.xib文件将在编译源代码构建阶段列出。这对我来说很有意义,因为在构建过程中,需要将.xib文件转换为.nib文件(使用
ibtool
),而且是这样

但是在重命名我的.xib文件并添加一些新文件时,我最终遇到了这样的情况:编译源代码构建阶段没有列出我的.xib文件。相反,它们都列在复制文件生成阶段。我没能解决这个问题。(别让我开始这么做。)

但事实证明我不需要修理它!当我构建时,我可以查看构建的应用程序包,我看到它有.nib文件,而不是.xib文件。.xib文件未被复制到资源文件夹中,即使它们处于复制文件构建阶段;它们正在被编译,即使它们不在编译源代码构建阶段

我可以通过查看构建日志来确认这一点:

CompileXIB "MyApp/en.lproj/ViewController~iphone.xib"
CompileXIB "MyApp/en.lproj/ViewController~ipad.xib"
这怎么可能


编辑:现在我无法复制我最初的前提!正如一位受访者所说,模板没有将.xib文件放在编译源代码构建阶段。然而,我最终肯定会遇到这样的情况:一些.xib文件处于编译源代码构建阶段,而另一些则处于复制构建阶段,这让我很困惑。

当我使用“Cocoa应用程序”模板为OS X创建一个全新的Xcode项目时,该项目唯一的
。xib
文件没有列在“编译源代码”下,将其列在“复制捆绑资源”下。因此,我不确定您的
.xib
是如何/为什么首先列在编译源代码下的


至于它们是如何使用
CompileXIB
命令自动编译的,我怀疑这是由于Xcode的“Interface Builder XIB Compiler”运行于所有Interface Builder文件。

当我使用“Cocoa应用程序”模板为OS X创建一个全新的Xcode项目时,项目唯一的
.xib
文件未列在“编译源代码”下,而是列在“复制包资源”下。因此,我不确定您的
.xib
是如何/为什么首先列在编译源代码下的

至于它们是如何使用
CompileXIB
命令自动编译的,我怀疑这是由于Xcode的“Interface Builder XIB编译器”,它运行于所有Interface Builder文件