xcode创建文件夹和文件

本文介绍了Xcode中Folder(蓝色)和Group(黄色)的区别以及如何引用文件。Folder会将整个文件夹引用进项目,不参与编译,而Group中的文件会出现在编译源列表。创建蓝色Folder时,文件会直接打包到bundle路径,适用于换肤或游戏场景。黄色Group则通常用于存放项目文件,避免与系统文件冲突。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在finder找到把工程,新建一个文件夹aa,然后在xcode里面--右键--add files to "xxx"--找到把文件夹aa--完成,以后若要创建文件,在aa文件夹--new file即可把文件添加进来,以后在包那里新建文件自然在这个包内。

 

iOS Xcode工程目录的 folder 和 group的区别(蓝色和黄色文件夹的区别)

XCode工程目录里面,有时你会发现2个不同颜色的文件夹,一种是蓝色的,一种是黄色的,最常见的是黄色的,我也是最近学习html5的时候,发现还有蓝色的文件夹呢,

来上图看下吧

folder 和 group

 上图所示,蓝色的是folder 黄色的是group。 那么它们有什么区别呢?

1. group 和 folder的区别

group 一般只在你的工程中是文件夹的形式,但是在本地的目录中还是以散乱的形式放在一起的,除非你是从外部以group的形式引用进来的。

folder 只能作为资源,整个引用进项目,不能编译代码,也就是说,以folder形式引用进来的文件,不能被放在complie sources列表里面。

2. 以folder的形式引用文件

我拖动外部的文件夹 WebViewJavascriptBridge 到我的xcode工程目录下面

会弹出对话框,如图

copy,是指文件不在项目的目录下面,例如项目在桌面上,文件在 Download 下,你 copy 就会被复制到项目里面。如果文件原本就在项目里面,则不执行任何操作。这里不管它,重点是 下面的单选框。

这里我选择的是以folder的形式引用文件夹,点击完成,如下图所示,文件夹是蓝色的,并且编译文件列表里面没有 webviewjavascriptBridge.m这个文件,证明文件夹引用,只会引用文件夹,文件夹里面的东西都会直接拷贝到 bundle 包,不参与编译。

2. 以group的形式引用文件

回到1的第一步,选中 create groups for any added folders ,点击完成,则如下图所示,文件夹是黄色的,并且编译文件列表里面神奇的存在了 webviewjavascriptBridge.m这个文件

 

现在,终于明白了 folder和 group的区别了。

 

 

 

//////////////////////////////////////////////////////////////////////////////////////////////////////

xcode下创建一个分组文件夹,通过New Group 或者是  Add Files to 的方法创建,一般都是黄色的文件夹,这个文件夹并不是真正的存在在项目的目录下,里面的文件还是放在了相同的目录下;如果我们加载资源文件,并存在同名的情况下,这样放在分组文件夹下面就不行了;所以我们需要创建真实的文件夹,

1、创建蓝色文件夹:

 

 

这样创建的文件夹是下图这种蓝色的文件夹,是真实存在在目录下面的

 

 

2、创建一般文件夹的方法是:

 

这样之后要取到这个资源文件夹下的文件要注意了,方法和直接放在目录下面的资源文件的路径不同:

第一种  黄色文件夹下:

 

 

    NSString *ImagePath =[[[NSBundle mainBundle]resourcePath] stringByAppendingPathComponent:@"惠购物icon.png"];

    

    self.imageTO.image = [UIImage imageWithContentsOfFile:ImagePath];

    

    NSLog(@"资源图片路径:%@",ImagePath);

 

第二种 蓝色文件夹下:

  NSString *themePath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"image"];

    if(themePath)

    {

        self.imageShow.image = [UIImage imageWithContentsOfFile:[themePath stringByAppendingPathComponent:@"惠购物icon.png"]];

    }

    NSLog(@"蓝色文件夹下图片的路径:%@",[themePath stringByAppendingPathComponent:@"惠购物icon.png"]);

////////////////////////////////////////////////////////////////////////

创建蓝色文件夹是直接把文件夹打包到bundle路径中,使用的时候要用绝对路径;

应用场景:换肤,游戏场景;

只需要更改不同的bundle路径,就可以实现加载相同的文件名,蓝色文件夹不能放项目文件(放到蓝色文件夹里面的文件是不会添加到工程---buildPhass-----compile  source(编译资源中));

创建一个黄色的文件夹,用来存放项目文件,如果黄色的文件夹中的文件与系统的文件重名,就会发生冲突,这时可以不拖进来的文件改成bundle类型再拖进来.


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值