现在的位置: 首页 > 综合 > 正文

NSBundle资源管理

2014年11月18日 ⁄ 综合 ⁄ 共 624字 ⁄ 字号 评论关闭

ios的开发中,经常需要将一些资源文件(视频,音频,图片等)部署ios设备中,

但在默认情况下,系统会将所有的资源全部拷贝mainBundle(全部纺织一个文件夹下)目录下,

即使你的资源是按文件夹来组织的。 在使用ArcGIS API for iOS加载离线cache图片的过程中,

这个问题非常明显,因为所有的cache图片都是按照分级规则组织好的图片,如果全部拷贝

mainBundle目录下有可能很多图片名称相同,同时也无法按照文件夹的规则去读取图片,

因此需要在mainBundle 目录下以文件夹的方式来管理。 解决这个问题很简单,只需要将需要拷贝的

资源文件夹拖拽进xcode工程,如下图,此时会弹出一个对话框,默认是“recursively create groups for any add folders”,

我们选择下面的一项“create folder references for any added folders” 点击add即可,

如图所示: 添加以后 在xocde中可以看对应的资源文件夹为蓝色,而不是黄色,

如下图: 这样,我们在使用[[NSBundle mainBundle]
pathForResource:fileName ofType:@”jpg” inDirectory: dir ];

的时候就可以通过文件夹径去获取相关文件了。

注意,请不要使用group或者add exist file的的方式来添加,

否则使用pathForResource方法无法获取要想要的文件

抱歉!评论已关闭.