在开发IOS应用时,我们经常需要将素材分类,并放入相应地子目录中。

在开发代码时,需要访问这些素材时,就需要获取对应的子目录路径。那么如何获取呢?

获取应用路径

首先,要找到应用所在的路径。

NSString *bundlePath = [[NSBundle mainBundle] bundlePath];

获取子目录路径

假设有一个子目录名字叫做images,那么可以按照下面的方法获取其路径。

NSString *imagePath = [bundlePath stringByAppendingPathComponent:@"images"];

找到这个路径就OK了,从这里开始,你就可以为所欲为了,比如遍历子文件夹中所欲的文件等。

别高兴太早

即使有了上面的代码,你也不一定会成功,为什么呢?因为IOS应用默认的文件组织结构是平坦(flat)模式,也就是没有子目录!你在Xcode中可以看到很多目录,但是生成的文件中却没有子目录。导致上面的代码失效。怎么办?

  1. 将你要添加的子目录拖拽到XCode中(或者右键单击工程选择-添加文件到工程),
  2. 在弹出的对话框中要选择 "Create Folder References for any added folders",切记!

如果我的子文件夹已经添加到了工程中,但是没有选择"Create Folder References for any added folders"怎么办?

没关系,直接删除他,删除的时候选择Remove References. 不要Move to Trash,然后重新添加一按照上面的步骤添加一次即可。

另外一个方法是在Build Parse中的 Copy Bundle Resources选项下设置。如下图所示,把要copy的子目录添加进去即可。

不同颜色的文件夹

在XCode中,有两种颜色的文件夹,一种是黄色,一种是蓝色,只有蓝色得文件夹才会被copy到app目录中,黄色的文件夹只是用来组织文件的,并不代表应用的最终结构!

Happy Coding!!!

获取IOS应用的子目录相关推荐

  1. 获取iOS设备的型号

    2019独角兽企业重金招聘Python工程师标准>>> 三种常用的办法获取iOS设备的型号: 1. [UIDevice currentDevice].model (推荐): 2. u ...

  2. 通过Safari浏览器获取iOS设备UDID(设备唯一标识符)

    通过Safari与mobileconfig获取iOS设备UDID(设备唯一标识符) 科普:U D I D (Unique Device Identifier),唯一标示符,是iOS设备的一个唯一识别码 ...

  3. Unity 之 代码获取IOS设备型号 -- 做分辨率适配

    Unity 之 代码获取IOS设备型号 一,通过机器型号校验 1.1 逻辑解释 1.2 实现代码 二,通过长宽比校验 一,通过机器型号校验 1.1 逻辑解释 在https://www.theiphon ...

  4. 获取ios设备的电池信息

    苹果官方给的关于如何获取设备电池信息接口很简单,尤其是获取电池的准确电量(官方的只能获取当前设备的电量的百分比).我之前写过一篇关于如何获取ios设备型号的文章,里面提到如何在项目在获取ios设备的具 ...

  5. 最新获取iOS设备型号大全(包括iphone7,iphone7 Plus)

    获取iOS设备型号,找了一圈发现一般写的都不够全,自己完善了一下. 调用记得加上头文件: #import <sys/utsname.h> + (NSString*)deviceString ...

  6. Java正则表达式通过User-Agent获取IOS版本

    如果ios版本为 14_3_1 matcher.group(0) 为 CPU iPhone OS 14_3_1 like Mac OS matcher.group(1) 为 14_3_1 matche ...

  7. 关于uniapp获取ios客户端平台安全距离(底部导航条)的方法

    1. 在uniapp中可通过内置api: uni.getSystemInfo(OBJECT) 获取系统信息,在success回调函数中会返回设备的详细信息对象,其中一个key名 'safeAreaIn ...

  8. 使用纯 python 实现 Instruments 协议,跨平台 (win,mac,linux) 获取 iOS 性能数据

    原文由YueChen发表于TesterHome社区网站,点击原文链接可与YueChen交流. 前言 获取 iOS 性能数据,一直都是比较麻烦的事情,之前在构建测试框架&平台的时候,获取 iOS ...

  9. iOS学习——获取iOS设备的各种信息

    不管是在Android开发还是iOS开发过程中,有时候我们需要经常根据设备的一些状态或信息进行不同的设置和性能配置,例如横竖屏切换时,电池电量低时,内存不够时,网络切换时等等,我们在这时候需要进行一些 ...

最新文章

  1. 将tensor张量转换成图片格式并保存
  2. Codeforces Round #735 (Div. 2)(A-D)没有B
  3. 岭回归预测PM2.5
  4. 微信公众平台开发--判断终端使用的浏览器是否是微信浏览器
  5. P1666 前缀单词
  6. python学习笔记26(python中__name__的使用)
  7. 程序员代码面试指南第二版 8.单调栈结构(普通及进阶)
  8. 网页对话框:window.showModalDialog的基本用法
  9. http://www.boobooke.com/bbs/thread-51022-1-1.html
  10. 微信小程序文件下载并保存
  11. 微信网页扫码登录的实现
  12. 用计算机数字唱歌,悬赏跪求计算器各种歌曲数字谱(最好带和音)
  13. Unity动画系统知识体系概览
  14. /usr/bin/ld: 找不到 -lstdc++
  15. [漫画]120430 混血男孩
  16. linux 串口 数量限制,linux – 你的Unix的TTY主要数量是多少?
  17. 车内看车头正不正技巧_史上最全:新手开车/停车技巧(真实图解)
  18. Log日志(Linux C)
  19. 高职c语言技能试题,高职上机C语言试卷A.doc
  20. \t\tsizeof(char*)几个字节?

热门文章

  1. 机器人学习--机器人仿真环境汇总
  2. HTML+CSS+JavaScript复习笔记持更(六)——CSS3常用属性之文本
  3. HTML的五种经典布局方式(二)
  4. php odbc连接sqlserver,php pdo连接sqlserver配置
  5. Windows API入门系列之七 -完善MessageBox
  6. 一些常规形几何形状的绘制和效果填充(二)
  7. python判断是不是文件夹_Python判断文件和文件夹是否存在的方法
  8. java语言实验报告,Java语言 实验报告(二)
  9. 小米用户画像_鹅智库发布手机品牌用户画像 一二线城市最爱小米 5G领域或占先机...
  10. for循环10000次花多长时间_我的三菱FX PLC学习之子程序调用与循环