xcode创建文件夹和文件

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

 

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

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

来上图看下吧

xcode创建文件夹和文件

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

1. group 和 folder的区别

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

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

2. 以folder的形式引用文件

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

会弹出对话框,如图

xcode创建文件夹和文件

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

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

xcode创建文件夹和文件

2. 以group的形式引用文件

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

xcode创建文件夹和文件

 

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

 

 

 

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

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

1、创建蓝色文件夹:

 

xcode创建文件夹和文件

 

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

xcode创建文件夹和文件

 

 

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

xcode创建文件夹和文件

 

xcode创建文件夹和文件

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

第一种  黄色文件夹下:

 

 

    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"]);