group 和 folder 引入文件夹的区别--妖妖
1.我们经常会遇到一种情况,那就是我们需要导入一些外部的文件,这些文件之间本身就有层次性。但是当我们右键新建一个组myGroup,然后将文件拖到myGroup中去,我们在工程的资源目录中看到的文件的层次关系好像已经写好了。其实,这是你的眼睛欺骗了你。当你在finder中查看文件的时候,你会发现其实这些文件的层次结构是错误的。它们并没有按照你的意思来分组。那么,这是为什么?怎样解决这个问题呢?
原因:在上面的操作中,系统并没有为我们创建一个文件夹,并将文件放到这个文件夹中,他只是简单的将你需要导入的文件直接放到了工程的根目录的下面,这样是不容易管理的,特别时当你需要链接一些外部文件,并为他们设置路径的时候,就很容易出现问题了。
group 和 folder
下面来介绍一下create groups for any added folders 和 create folder references for any added folders 的区别和使用
1.create groups for any added folders ,(为任何新增的文件夹创建组)
1.1对于外部引入的文件,你右键选择new group新建一个组myGroup,将文件拖到新建组的下面,但是实际上它不会真的存在于项目的目录中,你会发现新建的组myGroup并不存在,拖入的文件如果本来就在工程中,那么它依然在它原来所在的位置上面;如果是外部文件,那么他会在工程的根目录上面。
1.2对于外部引入的group不会这样,以create groups for any added folders的方式,添加的group以黄色的文件夹存在,当你想要使用里面的头文件的时候,你可以直接添加使用#include xxx.h来使用它。
2.create folder references for any added folders
选择这种方式外部引入的group,只是将文件简单的创建了引用,它不会被编译,使用的时候需要添加路径,如#include 文件夹的名字/xxxx.h,这些文件不会被编译,而且以蓝色的文件夹存在。
鉴于这两种情况,为了让我们的资源目录和文件的真实目录一致,我都是这样引入外部文件的
1.首先将文件按照你需要的层次结构排列好,需要新建文件夹的地方就新建文件夹,将他整理成你的资源目录中想要的效果。
2.右键打开show in finder,将你整理好的文件夹拖到工程里面
3.打开你的工程,这个时候,你的资源目录中并没有你拖入的文件夹,没有关系,右键add files to xxx,选择create groups for any added folders,大功告成!!!这个时候,你就会发现你的资源目录的文件层次和文件在工程中真实的文件层次就是一致的了。