基于视图的应用程序(view-based application)
应用程序如果仅使用一个视图,应该使用这个模板。一个简单的视图控制器会管理应用程序的主视图,而界面布置则使用一个Interface
Builder模板来定义(不过我们会教你如何去掉这东西,并按照自己的希望来构建界面)。那些未使用任何导航功能的简单应用程序应该使用这个模板。如果你的应用程序需要在多个视图之间切换,请考虑使用基于导航的模板。
基于导航的应用程序(navigation-based application)
基于导航的模板的理想用途,就是那些在多个视图间徘徊、从而需要一种在视图间切换的方法的应用程序。如果你可以预见在你的应用程序中,会有某些画面上带有
一个"回退"按钮,那很有可能你应该使用这个模板。导航控制器会完成所有关于建立导航按钮以及在视图"栈"之间切换的内部工作。这个模板提供了一个基本的
导航控制器以及一个用来显示信息的根视图(基础层)控制器。
工具应用程序(utility application)
适合于微件(Widget)类型的应用程序,这种应用程序有一个主视图,并且你可以将其"翻"过来,就像Leopard系统中的微件一样。你也可能是从
Konfabulator(第三方工具,苹果公司的Dashboard的前身)中熟悉了解微件的。iPhone的天气和股票程序是这些工具应用程序的最好
的例子。这个模板还包括一个信息按钮,可以将视图翻转过来显示应用程序的反面,这部分常常用来对设置或者显示的信息进行修改。
OpenGL ES应用程序(OpenGL ES application)
如果你要创建3D游戏或者图形,可以使用这个模板。它会创建一个配置好的视图,专门用来显示GL场景,并提供了一个例子计时器可以令其演示动画。本书中不会涉及OpenGL编程。
标签栏应用程序(tab bar application)
提供了一种特殊的控制器,会沿着屏幕底部显示一个按钮栏。这个模板适用于像iPod或者电话这样的应用程序,它们都会在底部显示一行标签,提供一系列的快捷方式,来使用应用程序的核心功能。
基于窗口的应用程序(window-based application)
如果其他5种模板都不适合你的需求,就只有用这个非常简单的模板了。它提供了一个简单的、带有一个窗口的应用程序。这是一个应用程序所需的最小框架,你可以用它作为开始来编写你自己的程序。