Xcode中的文件类型

文件类型

Xcode中的文件类型,总共4种类型:

1 普通文件(File)

2 Group(在Xcode中就是黄色的文件夹)

3 Folder(在Xcode中就是蓝色的文件夹)

4 Framework

每一种文件类型,都拥有2种属性:

1 文件路径(Path)

2 引用类型(Reference Type),指名文件路径的起点

通过文件位置和引用类型,Xcode就能定位到一个文件的确切位置。以下图为例:

Group aaaaa的引用类型为Relative to Build Products,其路径为../../../../../SourceItem/aaaaa,之所以有这么多../,是因为Relatvie to Build Product引用类型,表明了文件路径的起点是从工程的build文件夹开始算起.

在本例子中,build文件夹路径:

$HOME/Documents/myObjectiveC/SourceItem/DerivedData/SourceItem/Build/Products/Debug-iphonesimulator

而aaaaa所在的路径是:

$HOME/Documents/myObjectiveC/SourceItem/SourceItem/aaaaa

所以Relative to Build Product才会是../../../../../SourceItem/aaaaa

上图中的Full Path是aaaaa在系统磁盘上的路径,不会随着引用类型的选择而变化。

引用类型

从图中可以看到,Xcode的引用类型总共有6种:

Absolute Path就是按绝对路径引用

Relative to Group就是相对于上层Group,比如文件夹aaaaa如果选择这个引用类型,那么它的上层Group就是SourceItem文件夹,这个是默认的,也是最常用的类型

Relatvie to Project就是相对于工程文件夹,也就是包含.xcodeproj文件的文件夹

Relatvie to Developer Directory就是相对于Xcode app中的Developer文件夹,即/Applications/Xcode.app/Contents/Developer,如果需要用到Developer文件夹下的工具,这个选项很方便

Relative to Build Product就是相对于build文件夹,一个target的build产物可以是debug的,也可以是release的,如果选用这个引用类型,就可以方便的使用build的产物

Relative to SDK就是相对于当前的SDK目录,在本例子种,即/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator12.1.sdk,如果需要用到SDK里面的资源,这个选项很方便

Group和Folder的区别

Group和Folder的区别,首先就是颜色上的区别,Group在Xcode中黄色的,Folder在Xcode中试蓝色的;

其次最大的区别是,Group被称为一个逻辑容器,虽然在磁盘上可以游对应的文件夹,但它自己没有target membership属性,只有它里面包含的内容有target membership属性;Floder刚好相反,整个Floder被视为一个整体有自己的target membership,而它里面的内容却没有target membership。

因此,当一个文件夹想被当成一个整体时,使用Floder类型比Group方便

原文地址:https://www.cnblogs.com/chaoguo1234/p/10093051.html