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方便
Xcode中的文件类型的更多相关文章
- 5 个在 Linux 中管理文件类型和系统时间的有用命令
对于想学习 Linux 的初学者来说要适应使用命令行或者终端可能非常困难.由于终端比图形用户界面程序更能帮助用户控制 Linux 系统,我们必须习惯在终端中运行命令.因此为了有效记忆 Linux 不同 ...
- PHP处理上传文件信息数组中的文件类型 正确获取
PHP处理上传文件信息数组中的文件类型$_FILES['type']由客户端浏览器提供,有可能是黑客伪造的信息,请写一个函数来确保用户上传的图像文件类型真实可靠 如果是一般文件则通过 mime_con ...
- 三、Linux系统中的文件类型和文件扩展名
.sock文件也是一类特殊的文件,这类文件通常用在网络之间进行数据连接,如:我们可以启动一个程序来监听客户端的要求,客户端可以通过套接字来进行通信: linux中的文件类型 文件类型介绍 Linux系 ...
- UNIX中的文件类型
Unix的文件类型信息包含在stat结构的st_mode成员中可以用宏确定文件类型: 普通文件(S_ISREG()):包含某种形式数据的常用文件类型 目录文件(S_ISDIR()):这种文件包含其他文 ...
- linux中的文件类型
1.使用ls -l命令可以查看文件的类型和权限 [tansheng@localhost etc]$ ls -l ----------. root root 10月 : gshadow -------- ...
- Xcode 中 pch 文件配置 - iOS
一.简介 首先 pch 文件(即:Prefix Header)是一种预编译文件,在 Xcode 6 之前创建新的工程则会自动将该文件一起创建出来,但在 Xcode 6 之后苹果官方则默认将自动创建的方 ...
- linux中的文件类型以及查看文件类型的方法
Linux文件类型和文件的文件名所代表的意义是两个不同的概念,在linux中文件类型与文件扩展名没有关系.它不像Windows那样是依靠文件后缀名来区分文件类型的,在linux中文件名只是为了方便操作 ...
- linux中的文件类型标记方法
在ls -l显示的详细信息中有以下信息: -rw-r--r-- drwxr-xr-x 一共10个字符,第一个字符表示文件类型,后面9个字符分成3组表示文件权限.前三个表示属主(拥有者)对文件的权限,中 ...
- linux中的文件类型、时间戳、文件管理
一.linux 文件类型 1.普通文件:- ,f 2.目录文件:d 3.链接文件(符号链接):l 4.设备文件 字符设备(线性设备):c 块设备(非线性设备):b 5.命名设备:p 6.套接字文件:s ...
随机推荐
- gitblit server windows搭建
环境配置: windows64bit 系统 jdk1.8安装配置环境变量,这个不说了百度有 gitblit官网下载对应操作系统位数64bit包解压:http://www.gitblit.com/ ...
- 谈谈我的js学习过程(二)——“Hello World!”
在<谈谈我的js学习过程(一)>中,我简单聊了一下我认为的javascript的学习方法,接下来我们可以尝试来写一个最简单的js代码. "Hello World!"对于 ...
- CentOS 7中为Yum设置代理
公司给的Linux机器,默认没给联网,然后安装Docker时流程走不下去,找IT半天没人回,然后我就自己折腾,各种配置系统代理,结果并没有成功,最后发现yum可以单独为yum设置代理,方式如下: YU ...
- 如何在C#程序中模拟域帐户进行登录操作 (转载)
.NET Core .NET Core也支持用PInvoke来调用操作系统底层的Win32函数 首先要在项目中下载Nuget包:System.Security.Principal.Windows 代码 ...
- iOS Class结构分析
objc_class结构体 类在OC中是objc_class的结构体指针 typedef struct objc_class *Class; 在objc/runtime.h中objc_class结构体 ...
- “C++动态绑定”相关问题探讨
一.相关问题: 1. 基类.派生类的构造和析构顺序 2. 基类.派生类中virtual的取舍 二.测试代码: #include <iostream> class A { public: A ...
- scala (3) Function 和 Method
scala 定义函数的关键字是 val 定义函数的通用格式是 val 函数名 = (参数列表)=> {函数体} object FunctionDemo { //通用的定义格式 val f1 ...
- 20155238 2016-2017-2 《Java程序设计》第三周学习总结
教材学习内容总结 类定义使用class关键词,名称使用Cloths,建立实例运用New关键词 Clothes c1 = new Clothes(); = :制定参考名称参考某个对象 == :比较参考名 ...
- 20145209刘一阳《JAVA程序设计》第四周课堂测试
第四周课堂测试 1.下列说法正确的是(ACD) A .使用extends关键字定义一个类的子类. B .Java与C++类似,支持多继承,即子类可以有一个或多个父类. C .Object是所有类的祖先 ...
- Java Swing:JPanel中添加JPanel
1. JPanel默认布局是FlowLayout,如果不设置父JPanel的布局,则子JPanel自动填满父JPanel. JPanel jpanel = new JPanel(); jpanel.s ...