基于XCode开发iPhone APP程序结构教程

基于XCode开发iPhone APP程序结构教程是本文要介绍的内容,以下分析是基于Xcode进行iphone开发的代码。通过Xcode IDE在设计时可以自动做很多事;但是这些事意义何在,怎么将整个APP贯穿起来。分析了解之后,就可以知道应用程序大致结构,运作机制。基于此,以后也就只需了解特定的控件或功能库的使用了。

IPhone程序的结构

所有的iphone程序,都是桌面视窗程序;在可见性方面看,所见的一切都是窗口,因为它们都继承于共同的基类UIControl:

每个Iphone程序都有一个主窗口;

而每个显示的子视窗也是窗口;

每个控件也都是子窗口

以通用的单视窗程序和多视窗程序举例而言:

对于单视图程序而言,就是主窗口内部包含子视窗;

对于多视窗程序而言,

就是主视图包含一个特殊的子视窗:多视窗控制器。

而多视窗控制器则包含每个子视窗

因此,可以说,窗口之间存在父子包含关系:

一个主窗口仅且只能包含一个子视窗

该子视窗可以是一个具体的子视窗;这就是单视窗程序

该子视窗是一个多视窗控制器;这就是多视窗程序

一个子视窗可能包含着多个控件,这些控件也都是子窗口

多视窗控制器也是一个子视窗;它的作用是将子视窗当作其一个个控件来管理

理解如上逻辑组织结构,就可以看看在物理上是如何通过文件来表现的。

IPhone程序的物理组织

子视窗

每个子视窗由两部分组成:资源文件和控制文件。分别介绍如下:

可见操作起来是很麻烦,完全不如MFC中的自动一步到位;而且每类控件对应的类型也不能自动提示出来
 
MVC层次

V – 视图层
 
C – 控制层
 
MFC比较

资源文件 rc
 
映射类
 
与MFC区别在于:

Xlb中既包括资源信息,也包括控件和成员对象映射信息

而MFC中将控件和成员映射信息放在了对应类中

可以看出子视窗的两个作用:界面和控制;控制负责管理子窗口控件对象及其消息。

主窗口

主窗口的作用也是两个:界面和控制。

界面还是通过xlb资源文件来实现;只不过该界面很简单,只是负责放哪个子视窗。该文件名固定是MainWindow.xlb

控制则没有单独的控制文件。因为其作用很简单,只是负责放哪个子视窗,所以完全通过UIApp的接口来实现即可。也就是一个APP的代理类。代理类的文件名就是“projectname”AppDelegate.

应用程序

每个应用程序还有些别的固定文件:

main.m    应用程序起始文件

Info.plist 应用程序的一些配置信息:例如图标等。

了解了如上文件组织结构,分析一个例子则可以很快知道大致框架;各个功能各依存于何处。也可以了解一些Xcode交互幕后生成代码的意义。

IPhone程序的生命周期

多视窗程序就是出现多个子视窗;而多视窗控制器就是Iphone提供的有限几个。

Iphone开发的参考体系

界面布局控件

主要是特殊的控件、特殊的事件响应

持久层

应用程序在Iphone中的部署以及访问局限性

绘图

关于以下图的个人理解

view 类似于window中的控件(例如对话框),可以添加一些响应事件,同时有两个文件.h和.m两个文件对象.

相关推荐