如何正确地将现有源代码文件添加到我的Xcode项目中?

Bea*_*red 6 iphone xcode

我是iPhone开发的新手,我还熟悉Mac开发环境,包括Xcode.我想在我的iPhone项目中添加一些第三方代码,但是当我将"现有文件"添加到我的Xcode项目时,我会看到一个对话框,其中有太多我不理解的选项,并且这样,我的项目不起作用.当我#import headerfilename.h,我得到一个读取的构建错误headerfilename.h: No such file or directory.

alt text http://joecrotchett.com/images/misc/fileadd.jpg

  1. 任何人都可以向我解释所有这些选项的含义或给我链接到一些可以的文档吗?我很难在Apple的文档中找到任何东西.
  2. 我想选择哪些选项将现有源代码文件添加到我的Xcode项目中?我应该注意,我想要添加的源代码文件位于我的项目/ Classes/frameworkname /目录中.
  3. 添加之后,我是否需要在项目设置中的任何地方引用这个新的代码目录(即某种头文件目录变量)?

非常感谢!

更新:我在apple dev论坛上找到了以下答案/回复非常有用并帮助我解决了我的问题...

为简单起见: - 如果不检查复制选项,文件将保持原样. - 如果你检查它,它会被复制到你的项目文件夹中在第一种情况下(你似乎在做什么)你需要告诉编译器头文件在另一个目录中: - 项目信息 - >构建 - >搜索路径 - >用户标题搜索路径:添加您从头文件中取出的目录希望这会有所帮助


您已经发现了Cupertino最令人困惑的对话框.六年的Xcode,这件事对我来说仍然是一个谜.为了达到这个目的,我不得不做许多测试项目来尝试逆向工程这件事."复制"框表示它会将文件现在复制到项目中.如果未选中此框,则它仅在构建期间引用这些文件,并按原样复制它们.对于源代码,您需要选中"复制"框.
"相对于"对我来说是一个完全神秘的东西,我无法帮助你.我通常会离开它,但它已经设置好了.它是指相对于它们在磁盘上的位置,还是Xcode或捆绑中的排列?谁知道.最后2个单选按钮SEEM意味着它将重新创建您要添加的文件夹的文件夹结构,或者只是在Xcode中放置指向真实文件夹的"假"文件夹.这可能是您的问题 - 您添加的源代码并非全部位于顶层,当它找到它时,它不会重新创建层次结构.其他人可以提供更好的方式,希望,但我要做的是将所有源放在一个文件夹中,并使用复制框添加它.

小智 0

将项目复制到目标组的文件夹中(如果需要)

好吧,仅当您希望它复制文件时。如果您对它们的现有位置感到满意并且不希望它复制它们,请不要选择它(这就是我所做的)。

参考类型:

对我来说完全是个谜

文本编码

不言自明

为任何添加的文件夹递归创建组 为任何添加的文件夹创建文件夹引用

将此保留为默认值,然后按照您想要的方式组织 Xcode 项目中的文件夹。

添加到目标

如果您向项目添加其他目标,例如针对 iPhone 与 iPad 版本,那么没有注意到默认情况下仅将文件添加到其中一个(随机?)可能会导致头痛。

另外,请确保将新的标头目录添加到“项目设置”>“构建”>“搜索路径”中的搜索路径。我认为这就是造成你问题的原因。

希望这会有所帮助,我记得一开始这对我来说是多么令人困惑。