Xcode中Groups和Folder的区别

以前一直没有在意这个问题,今天”中奖”了 ;(

在Xcode文件夹视图中会发现2种颜色的文件夹图标:黄色和蓝色.

黄色表示组(groups),蓝色表示文件夹(folder).

组只是逻辑上定义,其中的文件在生成的App包里还是散开在根目录中,而文件夹会在最终的App包里生成对应的文件夹层次.

而且在Xcode 6.4中,如果想完全更新(update)App中的资源,不能简单点击Product->clean或clean build folder文件菜单,这样最新做的删除可能得不到更新.

取个例子:原来一个xxx.lua文件在Prj的xxx组中,这时该文件在生成App的根目录中,原因前面已经说了.

于是我们将xxx.lua从Xcode中删除,也从物理磁盘上删除.编译运行App:app包中还是有xxx.lua…

本猫是这样做彻底更新的:

  1. 停止运行的app
  2. Product->clean和clean build folder
  3. 删除该项目对应的DerivedData文件夹
  4. 重新编译运行

再说一个问题.

代码中访问xxx.lua的路径为”xxx/xxx.lua”,这时自然找不到文件.如果把代码中的路径改为”xxx.lua”是没问题的,但我们不想修改代码,不是吗!?

于是自作聪明的猫猪找到实际的App包,在根目录中新建一个xxx目录,然后将xxx.lua放进去.然后编译运行App,发现还是找不到路径,到实际App包里去看,路径里的文件是有的,路径都是对的,但是不行…此路不通.

估计app还做了其他检查,它认准的是Xcode生成的包中的内容.

所以如前所述正确的做法是在Prj中建立一个文件夹而不是groups!本例中,要认准”蓝瓶”的,才是OK的!

时间: 2024-11-30 10:56:10

Xcode中Groups和Folder的区别的相关文章

iOS开发那些事-Git在Xcode中的配置与使用

很多Git命令都是在命令行下运行的,命令行下管理Git有很多优点不用多说.但最大的缺点是要求用户记住这些命令.因此Git图形界面还是很受一些用户欢迎的,其中Xcode作为集成开发环境工具,也提供了一定Git图形界面功能.但是要想在Xcode中使用Git管理工程代码还想需要进行一些配置,然后才能使用. 如果我们是使用Xcode 4创建的一个iOS工程,在终端的命令行中提交代码时候,可能会出现下面的部分信息: create mode 100644 HelloWorld/HelloWorld.xcod

【IOS-COCOS2D-X 游戏开发之十四】XCODE中C++&OBJECT-C混编,详细介绍如何在COCOS2DX中访问OBJECT函数以及APPLE API

本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-cocos2dx/743.html Cocos2dx系列博文的上一篇详细介绍了如何在Xcode中利用jni调用Android的Java层代码,还没有看过的童鞋,请移步到如下博文: [iOS-cocos2d-X 游戏开发之十三]详细讲解在Xcode中利用预编译并通过Jni调用Android的Java层代码(cocos2dx里访问调用

IOS Xcode中快捷键大全_IOS

在Xcode 中有许多快捷键的设定可以使得你的编程工作更为高效,对于在代码文件中快速导航.定位Bug以及新增应用特性都是极有效的. 当然,你戳进这篇文章的目的也在于想要快速的对代码文件进行操作,或者是让Xcode的各面板更为适应你小本子的屏幕. 在Xcode 所有快捷键中下列这些是首当其冲应当学习的.在你学习到如何使用之后,也许就再也离不开它们了. Xcode中的常用快捷键 新建项目     com + shift +N 新建文件    com  + N 偏好设置  通用   com + , 跳

Linux中线程和进程的区别

Linux中线程和进程的区别 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,它是系统进行资源分配和调度的一个独立单位.例如,用户运行自己的程序,系统就创建一个进程,并为它分配资源,包括各种表格.内存空间.磁盘空间.I/O设备等,然后该进程被放入到进程的就绪队列,进程调度程序选中它,为它分配CPU及其他相关资源,该进程就被运行起来. 线程是进程的一个实体,是CPU调度和分配的基本单位,线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器.一组寄存器和栈),但

Xcode中修改变量名、类名及字符串的替换操作

Xcode中修改变量名.类名及字符串的替换操作         在做iOS开发代码优化的工作时,优化代码结构之前,我们应该先整理好工程的外貌,将文件和类的命名进行规范,在Xcode中为我们提供了方便而强大的名称修改功能. 第一步:修改类名         将鼠标点击放在类的名称上,选择Xcode工具栏中的edit->refactor->rename: 之后,将类名更改为我们需要的模式点击preview,记得将下面的关联文件勾选: Xcode会为我们检测出需要更改的地方,浏览无误后点击save.

xcode-如何释放Xcode中的链接列表

问题描述 如何释放Xcode中的链接列表 有一个结构: struct list{ struct list *next; int temp;}; 用下面的方法释放: // free linked liststruct list *head_list = NULL;struct list *current_list = NULL;struct list *prev_list = NULL;current_list = head_list;while (current_file_info_arr !=

web context j2ee-j2ee中的各种context的区别?

问题描述 j2ee中的各种context的区别? 比如applicationcontext,sessioncontext,servletcontext,requestcontext,responsecontext,pagecontext这几个context.上面可能没有列举完,希望大神可以详细地解答一下~ 解决方案 同样小白,我自己的理解就是他们的作用域范围不太一样吧.

安卓线程中 stopSelf();和ondestroy()的区别

问题描述 安卓线程中 stopSelf();和ondestroy()的区别 在runnable分别加入ondestroy()和stopself(); 在断点中下面的代码都执行了, 但是再一次startservice(线程)的时候前者提示Thread is started异常, 后者则正常 @Override public void onDestroy(){ super.onDestroy(); ListData.interrupt(); } 解决方案 interrupt()并不会真正结束掉线程.

mfc-关于MFC中nEscapement和nOrientation的区别和用法

问题描述 关于MFC中nEscapement和nOrientation的区别和用法 我使用的是cEscapement的方式调整字体角度,结果是以每行的首字为原点的角度变化,即如果换行了,文字变换角度是对的但上下两行仍然是对齐的. 有没有什么办法使得角度变换后能够将整个字体作为整体一起改变. (_T("字体角度") == strName) { lf.lfEscapement = _ttol(strVal) *10; pText->m_pFont = pText->m_pLay