Dropbox iOS SDK有自己的Framework包,但为了轻松自定义它,我选择将其Xcode项目作为子项目包含在内。 我该如何引用它的.h类? 我从“添加文件”按钮添加了.xcodeproj,并在标题搜索路径中添加了以下值:
$(PROJECT_DIR)
子项目看起来与主项目处于同一水平。
导入本身是否应该链接依赖项?
(我对Xcode中的导入系统感到非常沮丧)
答案 0 :(得分:0)
您的基本方法似乎合理(并且非常接近我处理许多供应商项目的方式)。由于您已将$(PROJECT_DIR)
添加到标题搜索路径中,并假设该框架位于名为" Dropbox"的目录中,因此您可以通过以下几种方式引用这些包: / p>
#import <Dropbox/Header.h>
#import "Dropbox/Header.h"
我更喜欢将子项目视为&#34;类似系统的&#34;所以倾向于使用尖括号,为内部代码保留双引号。但无论哪种方法都很好。
导入本身是否不应该依赖链接?
没有。您仍然需要链接依赖项。 #import
只做一件事:将请求的文件插入当前文件中。它确实是所有。它与您获取引用文件并将其复制/粘贴到您的代码中相同(基本上它是如何在预处理器中实现的)。这用于&#34;标题&#34;文件是一个惯例问题。它与编译器的工作方式无关。从技术上讲,您可以导入包含其中方法的.m
文件,作为执行代码重用的方法。 (我已经看到在我工作的项目中完成了。请不要这样做......)
在处理ObjC模块时,它有点不同(使用@import
而不是#import
)。但是,如果您只是按原样导入标题,请将其视为&#34;将此其他文件放在此处,与写入完全一样。&#34;