前言
入门篇
第1章 iPhone OS介绍
1.1 iPhone OS预览
1.1.1 iPhone OS的发展历史
1.1.2 iPhone OS的外观
1.1.3 多任务特性
1.1.4 不支持的技术
1.1.5 应用程序开发
1.2 iPhone OS体系结构
1.2.1 Core OS
1.2.2 Core Service
1.2.3 Media
1.2.4 Cocoa Touch
1.3 iPhone OS应用程序
1.3.1 游戏类应用程序
1.3.2 实用工具类应用程序
1.3.3 电子书类应用程序
1.4 iPhone OS应用程序商店
1.5 本章小结
1.6 本章练习
基础篇
第2章 iPhone编程语言
2.1 面向对象的特性
2.1.1 面向过程编程
2.1.2 面向对象编程
2.1.3 编程语言如何运作
2.1.4 更高层次的抽象—面向对象语言
2.2 面向对象程序的组织结构与任务
2.2.1 面向对象的主要组织结构
2.2.2 面向对象的任务之一—处理对象构成的网络结构
2.2.3 面向对象的任务之二—设计类之间的关系
2.3 Objective-C 2.0编程语言
2.3.1 Objective-C简介
2.3.2 Objective-C的发展历史
2.4 混用C/C++编程
2.5 本章小结
2.6 本章练习
第3章 使用苹果公司提供的开发工具
3.1 安装Xcode开发工具
3.1.1 从操作系统光盘安装
3.1.2 从苹果公司官方开发网站下载安装
3.2 Xcode介绍
3.2.1 进入Xcode
3.2.2 Xcode组成元素
3.3 Interface Builder介绍
3.3.1 新文件对话框
3.3.2 文档窗口
3.3.3 资源库
3.3.4 检视窗口
3.4 其他开发相关工具
3.4.1 Instruments
3.4.2 Simulator
3.5 开发工具提供的例子程序
3.5.1 下载例子程序
3.5.2 查看例子程序
3.6 本章小结
3.7 本章练习
第4章 Objective-C语言的语法基础
4.1 Objective-C中的对象、类和方法
4.1.1 对象
4.1.2 类
4.1.3 接口和实现
4.1.4 方法
4.2 Objective-C语言的基本语法介绍
4.2.1 文件类型
4.2.2 类的声明
4.2.3 方法和消息
4.2.4 字符串
4.2.5 日志打印
4.3 Objective-C的数据类型和表达式
4.3.1 数据类型
4.3.2 运算表达式
4.4 Objective-C的循环语句
4.4.1 for循环
4.4.2 while循环
4.4.3 do循环
4.5 Objective-C的条件语句
4.5.1 if语句
4.5.2 switch语句
4.5.3 条件操作
4.6 Objective-C的内存管理
4.6.1 引用计数值
4.6.2 对象释放池
4.7 Objective-C的继承
4.7.1 继承的语法
4.7.2 继承的用法
4.8 Objective-C的多态性、动态类型和动态绑定
4.8.1 多态性
4.8.2 动态绑定和动态类型
4.9 Objective-C的类别和协议
4.9.1 类别
4.9.2 协议
4.10 Objective-C的属性
4.11 Objective-C的快速枚举
4.12 Objective-C++
4.13 使用Objective-C的高级类
4.14 本章小结
4.15 本章练习
第5章 iPhone编程的一般约定
5.1 iPhone的命名法则
5.1.1 代码命名
5.1.2 方法命名规则
5.1.3 函数命名法则
5.1.4 实例变量和数据类型命名
5.2 iPhone程序的初始化
5.2.1 类的初始化
5.2.2 指定初始化函数
5.2.3 初始化过程中的错误检测
5.3 Objective-C语言与C++混用
5.4 本章小结
5.5 本章练习
第6章 iPhone程序的设计模式
6.1 MVC模式
6.2 对象共享模式
6.3 目标和动作模式
6.4 通告模式
6.5 归档模式
6.6 子视图模式
6.7 委托模式
6.8 执行命令模式
6.9 代理模式
6.10 本章小结
6.11 本章练习
第7章 应用程序基础框架
7.1 字符串处理
7.2 容器
7.2.1 NSArray
7.2.2 NSDictionary
7.2.3 NSSet
7.2.4 NSIndexSet
7.3 运行循环和定时器
7.4 通告
7.5 程序包
7.6 处理文件
7.6.1 NSFileManager
7.6.2 NSFileHandle
7.7 本章小结
7.8 本章练习
第8章 图形界面基础框架
8.1 UIApplication
8.1.1 UIApplication类方法
8.1.2 UIApplication属性方法
8.1.3 UIApplication实例方法
8.2 UIWindow
8.2.1 UIWindow属性方法
8.2.2 UIWindow实例方法
8.3 程序的启动和退出
8.4 UIView
8.5 常见的程序界面风格
8.6 hello world实例程序
8.7 本章小结
8.8 本章练习
第9章 基本控件
9.1 UIView和控件
9.2 常用控件
9.3 自定义控件
9.4 警告窗口和用户响应
9.5 本章小结
9.6 本章练习
提高篇
第10章 iPhone的高级表格程序
10.1 表格程序预览
10.1.1 表格的样式
10.1.2 自定义单元格
10.2 表格程序的实现原理
10.2.1 表格视图的基础
10.2.2 实现一个简单的表
10.2.3 分组表和索引表
10.2.4 附属子视图
10.3 自定义单元格
10.3.1 编辑文本
10.3.2 编辑图片
10.4 实例程序
10.5 本章小结
10.6 本章练习
第11章 程序中访问地址簿
11.1 地址簿预览
11.2 访问地址簿
11.2.1 创建工程
11.2.2 视图布局
11.2.3 编写头文件
11.2.4 编写实现文件
11.2.5 连接控件
11.2.6 运行程序
11.3 使用地址簿界面
11.3.1 地址簿导航控制器(ABPeople PickerNavigationController)
11.3.2 个人视图控制器(ABPerson ViewController)
11.3.3 新联系人信息控制器(ABNew PersonViewController)
11.3.4 添加新的联系人信息控制器(ABUnknowperson ViewController)
11.4 地址簿实例程序
11.4.1 创建工程
11.4.2 代码编写
11.5 本章小结
11.6 本章练习
第12章 地图相关程序
12.1 地图程序预览
12.2 位置服务
12.3 地图服务
12.4 地图实例程序
12.4.1 创建城市列表属性文件
12.4.2 界面设计
12.4.3 代码编写
12.5 本章小结
12.6 本章练习
第13章 重力感应
13.1 重力感应预览
13.2 获取重力感应数据
13.3 重力感应实例程序
13.3.1 界面设计
13.3.2 代码编写
13.4 本章小结
13.5 本章练习
第14章 使用网络
14.1 网络框架预览
14.2 CFNetwork
14.2.1 CFNetwork基础概念
14.2.2 CFNetwork APIs
14.3 套接字
14.3.1 Socket的创建
14.3.2 Socket配置
14.3.3 Socket连接
14.3.4 Socket传输数据
14.3.5 Socket编程实例
14.4 接入网络服务
14.5 实例程序
14.6 本章小结
14.7 本章练习
第15章 自定义视图和图形绘制
15.1 Quartz
15.1.1 页面(Page)
15.1.2 图形上下文(Graphics Context)
15.1.3 不透明数据类型(Opaque Data Type)
15.1.4 图形状态(Graphics States)
15.2 坐标系统
15.3 绘制点和矩形
15.4 绘制位图
15.5 绘制文字
15.6 实例程序
15.7 本章小结
15.8 本章练习
第16章 高级触摸事件
16.1 Cocoa Touch预览
16.2 事件和触摸
16.3 多点触摸
16.4 实例程序
16.5 本章小结
16.6 本章练习
第17章 剪切板
17.1 剪切板预览
17.2 剪切、复制和粘贴
17.3 实例程序
17.4 本章小结
17.5 本章练习
第18章 照片应用
18.1 照片应用预览
18.2 拍摄照片
18.3 访问照片库
18.4 实例程序
18.5 本章小结
18.6 本章练习
第19章 多媒体应用
19.1 多媒体应用预览
19.2 播放音频
19.2.1 System Sound Services
19.2.2 AVAudioPlayer
19.3 录制音频
19.4 播放视频
19.5 实例程序
19.6 本章小结
19.7 本章练习