找回密码
 立即注册
查看: 2769|回复: 51

[学术/精华文章] Xcode中蓝色文件夹有黄色文件夹啥意思?

[复制链接]
发表于 2017-3-2 15:11 | 显示全部楼层 |阅读模式
今天在练习使用聚合数据SDK时,发现从外面拖到项目的sdk文件夹是蓝色的,以前不是没有注意到文件夹有2个颜色,可都没太深入研究。今天心血来潮,就来研究一下它吧!

  • 在我们引入第三方库或者使用某某SDK的时候一般都是直接将文件夹拖进工程中,并且会选择以Copy items if needed的方式把文件夹复制到工程中。
[/url][url=http://7xiz34.com1.z0.glb.clouddn.com/QQ20150527-3.png]
  • 我们第一眼看到的时候都没有思考它为什么是蓝色的,只要能用就行了。可是。。。好像用不了啊!明明已经引入文件了,为什么会报错呢?
[/url][url=http://7xiz34.com1.z0.glb.clouddn.com/QQ20150527-4.png?imageView2/2/w/638/interlace/1]
  • 还记得刚才导入文件的时候copy items if needed选项下面还有选项可更改呢,试一试呗,反正试一试又不会怀孕。
[/url][url=http://7xiz34.com1.z0.glb.clouddn.com/QQ20150527-7.png]
  • 然后在看看文件中导入的方式,可以直接用类名,不再用全路径的方式了,美哉呀!
[url=http://7xiz34.com1.z0.glb.clouddn.com/QQ20150527-6.png][/url]
  • 可这到底是为什么呢?文件夹为什么会有蓝色的区别呢?客观别着急,切听我慢慢道来。
蓝色的是folder ,黄色的是group 。folder就是文件管理器中的文件夹的概念,而group是一个分组的概念,记得在工程中新建一个“文件夹”的时候是new group,而不是new folder吧!group 一般只在你的工程中是文件夹的形式,但是在本地的目录中还是以散乱的形式放在一起的,除非你是从外部以group的形式引用进来的。记得刚才在引入的时候更改选项为Create groups以后文件夹就变为黄色了吧。这样引用进来的文件夹,你到工程源文件夹里面观察,它已经被打散了,没有了层级慨念;而folder 只能作为资源,整个引用进项目,不能编译代码,也就是说,以folder形式引用进来的文件,不能被放在complie sources列表里面。只是拷贝到工程文件夹里面,不参与编译,还有文件夹的层级概念,所以导入头文件的时候就要写全路径了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
发表于 2017-4-10 13:09 | 显示全部楼层
好帖就是要顶
发表于 2017-4-10 13:32 | 显示全部楼层
真心顶
发表于 2017-4-10 13:32 | 显示全部楼层
难得一见的好帖
发表于 2017-4-10 13:18 | 显示全部楼层
说的非常好
发表于 2017-4-10 13:24 | 显示全部楼层
LZ真是人才
发表于 2017-4-13 10:19 | 显示全部楼层
很不错
发表于 2017-4-13 10:01 | 显示全部楼层
楼主是超人
发表于 2017-4-13 10:30 | 显示全部楼层
好帖就是要顶
发表于 2017-4-13 10:23 | 显示全部楼层
顶顶多好
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-4-29 21:57 , Processed in 0.164521 second(s), 30 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表