在上面的New Project窗口中点击Save按钮确定保存之后,界面自动进入了Xcode窗口,如图2-6所示。
窗口的布局
打开Xcode窗口后,可以看到窗口主要由四部分组成:
左侧的Groups & Files窗格 :在这个窗格中包含了项目的所有资源,这些资源已经自动进行了逻辑上的分组,但我们也可以根据自己需要移动组内文件、删除组或重命名组。若需要查看某一项的详细信息,可以单击每个组左侧的三角形图标来展示下一级子目录,查看完毕后也可以再次单击三角形图标来隐藏子目录。这里显示的分组只是逻辑上的,在物理结构的存储上并不一定和在这里看到的相同。
右上方的细节显示窗格 :该窗格中显示了在Groups & Files窗格中被选择项的详细信息。如在图2-6中显示的,在Groups & Files中选择了AboutViewController.m文件,该窗格中便只显示了AboutViewController.m文件。如果在 Groups & Files中选择的是Classes文件夹,那么其中显示的内容将是:AboutAppDelegate.h、AboutAppDelegate.m、 AboutViewController.h以及AboutViewController.m四个文件。
右下方的文件编辑窗格 :该窗格可根据在Groups & Files中所选文件,来显示文件的具体内容,并且可以在该区域进行文件内容的编辑工作。如图2-6,在Groups & Files中选中了AboutViewController.m文件,在右下方的文件编辑窗格中就对应显示了该文件的代码。
窗口最顶部一栏是工具栏 ,其中提供了许多常用的命令,如运行、搜索等。
以上,就是Xcode窗口的整体布局。
常用资源管理
下面我们来重点看一下Xcode是如何对开发中的一些常用资源进行管理的。在开发过程中常用资源都放在了Groups & Files窗格的第一项中,如本例的About项。
点击About左侧的小三角形图标,可以对它的子目录进行展开或折叠。现在展开About的子目录,可以看到5个子文件夹:Classes、 Other Sources、Resources、Frameworks和Products。下面就来分别介绍一下这5个文件夹在资源管理方面的主要职责:
(1) Classes文件夹:该文件夹主要用来保存代码文件,绝大多数代码文件要放在这里进行管理。如果项目较大,文件较多的话,也可以在这里继续向下设置子目录进行系统的管理。
(2) Other Sources文件夹:该文件夹也是用来管理项目的代码文件,但只是包含非Objective-C类的源代码文件。如图2-6中所示的一个预编译头文件About_Prefix.pch文件和整个程序的入口——main.m文件。
(3) Resources文件夹:这里主要用来管理和保存项目的非代码文件,比如图像、声音等文件。因为iPhone程序可以访问的所有资源都放在自己的应用程序沙盒中,其他程序资源对本程序来说都是不可见的,所以需要将程序所需的一切资源都保存到这里来。
什么是应用程序沙盒呢?在iPhone中,每个程序只可以读写系统为本程序所创建的文件系统中的文件,而无法访问到其他应用程序的。这个文件系统就称为该应用程序的沙盒。
Resources文件夹下面,有两个后缀名为.xib的文件。.xib是iPhone开发当中非常重要的一个文件类型,双击它会启动Interface Builder。这类文件中包含了所有关于界面设计的信息。
About-Info.plist文件提供了一个列表,利用它,可以对程序的属性进行一些修改。
4) Frameworks文件夹:这里主要用来包含程序要使用的框架和库,类似于C++中的lib文件与Java中的jar文件。在我们的程序创建时,项目已默认添加了最常用的框架和库,即如图2-5中所示的三个:UIKit.framework、Foundation.framework和 CoreGraphics.framework。但如果要使用其他并没有默认添加进来的框架和库的话,比如数据库功能或OpengGL相关功能,则需要手动将对应的框架链接进来。
(5) Products文件夹:此文件夹包含本项目已经编译好的文件,如本例中的About.app。