文件类型

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中的文件类型的更多相关文章

  1. 5 个在 Linux 中管理文件类型和系统时间的有用命令

    对于想学习 Linux 的初学者来说要适应使用命令行或者终端可能非常困难.由于终端比图形用户界面程序更能帮助用户控制 Linux 系统,我们必须习惯在终端中运行命令.因此为了有效记忆 Linux 不同 ...

  2. PHP处理上传文件信息数组中的文件类型 正确获取

    PHP处理上传文件信息数组中的文件类型$_FILES['type']由客户端浏览器提供,有可能是黑客伪造的信息,请写一个函数来确保用户上传的图像文件类型真实可靠 如果是一般文件则通过 mime_con ...

  3. 三、Linux系统中的文件类型和文件扩展名

    .sock文件也是一类特殊的文件,这类文件通常用在网络之间进行数据连接,如:我们可以启动一个程序来监听客户端的要求,客户端可以通过套接字来进行通信: linux中的文件类型 文件类型介绍 Linux系 ...

  4. UNIX中的文件类型

    Unix的文件类型信息包含在stat结构的st_mode成员中可以用宏确定文件类型: 普通文件(S_ISREG()):包含某种形式数据的常用文件类型 目录文件(S_ISDIR()):这种文件包含其他文 ...

  5. linux中的文件类型

    1.使用ls -l命令可以查看文件的类型和权限 [tansheng@localhost etc]$ ls -l ----------. root root 10月 : gshadow -------- ...

  6. Xcode 中 pch 文件配置 - iOS

    一.简介 首先 pch 文件(即:Prefix Header)是一种预编译文件,在 Xcode 6 之前创建新的工程则会自动将该文件一起创建出来,但在 Xcode 6 之后苹果官方则默认将自动创建的方 ...

  7. linux中的文件类型以及查看文件类型的方法

    Linux文件类型和文件的文件名所代表的意义是两个不同的概念,在linux中文件类型与文件扩展名没有关系.它不像Windows那样是依靠文件后缀名来区分文件类型的,在linux中文件名只是为了方便操作 ...

  8. linux中的文件类型标记方法

    在ls -l显示的详细信息中有以下信息: -rw-r--r-- drwxr-xr-x 一共10个字符,第一个字符表示文件类型,后面9个字符分成3组表示文件权限.前三个表示属主(拥有者)对文件的权限,中 ...

  9. linux中的文件类型、时间戳、文件管理

    一.linux 文件类型 1.普通文件:- ,f 2.目录文件:d 3.链接文件(符号链接):l 4.设备文件 字符设备(线性设备):c 块设备(非线性设备):b 5.命名设备:p 6.套接字文件:s ...

随机推荐

  1. ruby安装及webStorm配置SCSS

    sass安装: 步骤:(window系统) 1.下载RubyInstaller(v2.4.3),运行安装,基本直接next安装,不过有个add to PATH的选项一定要勾选,这样就不用配置环境变量. ...

  2. POJ 1080( LCS变形)

    题目链接: http://poj.org/problem?id=1080 Human Gene Functions Time Limit: 1000MS   Memory Limit: 10000K ...

  3. SAP RANG语法

    Range  和select-option 的变量是差不多的 sign = 'I' 或 sign = 'E' 是指INCLUED 和 EXCLUDE OPTION = 'EQ' 或其他操作符.. LO ...

  4. SVG动画总结

    SVG可以在内部定义CSS动画样式,包括动画,如下面的格式: <svg> <defs> <style> </style> </defs>&l ...

  5. 几种交叉验证(cross validation)方式的比较

    模型评价的目的:通过模型评价,我们知道当前训练模型的好坏,泛化能力如何?从而知道是否可以应用在解决问题上,如果不行,那又是哪里出了问题? train_test_split 在分类问题中,我们通常通过对 ...

  6. 03 - django简介

    1.MVC与MTV模型 2.Django的下载与基本命令 pip install django==2.0.1 第三方库安装到哪里了? 创建一个django project C:\Desktop\fir ...

  7. 【CF617D】Roads in Yusland

    [CF617D]Roads in Yusland 题面 蒯的洛谷的 题解 我们现在已经转化好了题目了,戳这里 那么我们考虑怎么求这个东西,我们先判断一下是否所有的边都能被覆盖,不行的话输出\(-1\) ...

  8. C#中如果类的扩展方法和类本身的方法签名相同,那么会优先调用类本身的方法

    新建一个.NET Core项目,假如我们有如下代码: using System; namespace MethodOverload { static class DemoExtension { pub ...

  9. 在CentOS上安装Mysql使用yum安装mysql

    https://jingyan.baidu.com/article/c74d600079be530f6a595dc3.html

  10. Object C学习笔记7-字符串NSString之一

    在Object C中存在两个类用于操作字符串,NSString和NSMutableString;NSString在赋值之后不能修改其内容和长度,而NSMutableString可以动态的修改字符串内容 ...