iOS开发:从基础到交互应用构建
立即解锁
发布时间: 2025-08-20 01:38:09 阅读量: 1 订阅数: 6 


iOS 7开发入门:探索iOS SDK
### iOS 开发:从基础到交互应用构建
#### 1. 回顾与展望
在之前的学习中,我们对 iOS 开发有了初步的认识。了解了 iOS 项目模板,创建了简单的 “Hello, World” 应用,熟悉了 Xcode 5 的使用,开始运用 Interface Builder 设计界面,还学会了设置应用图标。不过,“Hello, World” 程序是单向的,仅向用户展示信息,无法获取用户输入。接下来,我们将探索如何获取 iOS 设备用户的输入,并根据这些输入采取相应的行动。
#### 2. 处理基本交互的新应用
为了进一步学习 iOS 开发,我们要编写一个稍复杂的应用,该应用包含两个按钮和一个标签。当用户点击任意一个按钮时,标签上的文本会发生改变。这个看似简单的示例,却能展示创建交互式 iOS 应用的关键概念。同时,我们还会介绍 `NSAttributedString` 类,它可以让我们在许多 Cocoa Touch GUI 元素中使用带样式的文本。
#### 3. 模型 - 视图 - 控制器(MVC)范式
在深入开发之前,我们需要了解一个重要的理论——模型 - 视图 - 控制器(MVC)范式。这是一种将基于 GUI 的应用程序代码进行逻辑划分的方式。如今,几乎所有面向对象的框架都在一定程度上遵循 MVC,但很少有像 Cocoa Touch 这样严格遵循的。
MVC 模式将所有功能分为三个不同的类别:
- **模型(Model)**:包含应用程序数据的类。
- **视图(View)**:由用户可以看到并与之交互的窗口、控件和其他元素组成。
- **控制器(Controller)**:将模型和视图绑定在一起的代码,包含决定如何处理用户输入的应用程序逻辑。
MVC 的目标是使实现这三种类型代码的对象尽可能相互独立。创建的任何对象都应能明确归属于这三个类别之一,且几乎没有可归类为其他两类的功能。例如,实现按钮的对象不应包含处理按钮点击时数据的代码,实现银行账户的对象不应包含绘制表格以显示其交易记录的代码。
MVC 有助于确保最大程度的可重用性。实现通用按钮的类可以在任何应用程序中使用,而实现特定计算按钮的类只能在其最初编写的应用程序中使用。
在编写 Cocoa Touch 应用程序时,主要使用 Xcode 中的可视化编辑器 Interface Builder 创建视图组件,也会从代码中修改甚至创建用户界面。模型可以通过编写 Objective - C 类来保存应用程序数据,或者使用 Core Data 构建数据模型。在本章的应用程序中,由于不需要存储或保留数据,所以不会创建任何模型对象,但随着应用程序变得更加复杂,后续会引入模型对象。控制器组件通常由为应用程序特定创建的类组成,这些类可以是完全自定义的类(`NSObject` 子类),但更常见的是 UIKit 框架中现有通用控制器类的子类,如 `UIViewController`。通过继承这些现有类,可以免费获得很多功能,无需重复编写代码。
#### 4. 创建新项目
现在是时候创建下一个 Xcode 项目了。我们将使用与上一章相同的模板:单视图应用程序(Single View Application)。再次从这个简单的模板开始,将更容易理解 iOS 应用程序中视图和控制器对象是如何协同工作的。后续章节会使用其他模板。
创建项目的具体步骤如下:
1. 启动 Xcode,选择 “File ➤ New ➤ Project…” 或按 `⌘N`。
2. 选择 “Single View Application” 模板,然后点击 “Next”。
3. 在 “Product Name” 字段中,输入新应用程序的名称 “Button Fun”。“Organization Name”、“Company Identifier” 和 “Class Prefix” 字段应保留上一章使用的值(Apress、com.apress 和 BID),可以保持不变。
4. 由于要编写 iPhone 应用程序,所以在 “Devices” 中选择 “iPhone”。
5. 点击 “Next”,系统会提示选择项目的保存位置。可以根据自己的喜好选择是否勾选 “Create git repository” 复选框,将项目与其他学习项目一起保存。
#### 5. 查看视图控制器
稍后,我们将使用 Interface Builder 为应用程序设计视图(即用户界面)。在此之前,先查看并修改为我们创建的源代码文件。
在项目导航器中,如果 “Button Fun” 组未展开,点击旁边的展开三角形。“Button Fun” 文件夹包含四个源代码文件(以 `.h` 或 `.m` 结尾)、一个故事板文件和一个用于包含应用所需图像的资产目录。这四个源代码文件实现了应用程序所需的两个类:应用程序委托和应用程序唯一视图的视图控制器。注意,Xcode 会自动将指定的前缀添加到所有类名中。
我们先处理为我们创建的视图控制器类 `BIDViewController`,它负责管理应用程序的视图。“BID” 部分的名称自动从指定的类前缀派生而来,“ViewController” 部分表明这是一个视图控制器类。点击 “BIDViewController.h” 查看类的头文件内容:
```objc
#import <UIKit/UIKit.h>
@interface BIDViewController : UIViewController
@end
```
`BIDViewController` 是 `UIViewController` 的子类,`UIViewController` 是前面提到的通用控制器类之一,属于 UIKit 框架。通过继承这个类,我们可以免费获得很
0
0
复制全文
相关推荐










