前言
第1章 iPad开发入门/1
1.1 iPad概览/2
1.2 从PC到iPad/3
1.3 从iPhone到iPad/4
1.4 iPad开发的必备知识/5
1.5 iPad开发的必备工具/5
1.6 第一个iPad应用-HelloWorld/6
1.6.1 建立工程:HelloWorldMail/7
1.6.2 工程概览/8
1.6.3 添加按钮/15
1.6.4 邮件编辑器/17
1.7 小结/19
第2章 视图和视图控制器/20
2.1 视图(UIView)/21
2.1.1 视图概览/21
2.1.2 窗口(UIWindow)/22
2.1.3 网页视图(UIWebView)/23
2.2 视图控制器(UIViewController)/23
2.2.1 视图控制器概览/23
2.2.2 导航控制器(UINavigationController)/24
2.2.3 标签控制器(UITabBarController)/25
2.3 弹出控制器(UIPopoverController)/26
2.4 分割视图控制器(UISplitViewController)/27
2.5 实例:iPad网页导航/27
2.5.1 基于分割视图控制器的应用/27
2.5.2 网页视图/29
2.5.3 表格视图/31
2.6 小结/34
第3章 内存管理/35
3.1 对象所有权、引用计数与释放/36
3.2 自动释放与便捷方法/38
3.3 访问器方法与属性/39
3.4 改变引用计数的特殊情况/40
3.5 内存管理总结/41
第4章 键盘输入和自定义键盘/42
4.1 文本输入与系统键盘/43
4.2 自定义键盘之一:替代系统键盘/47
4.1 自定义键盘之二:与系统键盘共存/50
4.4 自定义键盘之三:修改系统键盘/51
4.5 小结/55
第5章 绘图/56
5.1 iOS概览/57
5.2 iOS中的绘图技术/58
5.3 Quartz2D/59
5.4 贝济埃路径的使用/61
5.5 画图实战:绘图板/62
5.6 小结/74
第6章 容器类的使用/76
6.1 数组(NSArray)与可变数组(NSMutableArray)/77
6.1.1 数组的创建与初始化/78
6.1.2 查询数组/78
6.1.3 产生新数组/79
6.1.4 比较数组/79
6.1.5 保存数组/79
6.1.6 添加对象(NSMutableArray方法)/79
6.1.7 移除对象(NSMutableArray方法)/79
6.1.8 替换对象/80
6.2 字典(NSDictionary)与可变字典(NSMutableDictionary)/80
6.2.1 创建字典/80
6.2.2 获取关键字与数值/81
6.2.3 保存字典/81
6.2.4 添加条目(NSMutableDictionary方法)/81
6.2.5 移除条目(NSMutableDictionary方法)/81
6.3 集合(NSSet)与可变集合(NSMutableSet)/81
6.3.1 创建集合/82
6.3.2 读取集合/82
6.3.3 比较集合/82
6.3.4 添加或移除对象(NSMutableSet方法)/82
6.3.5 集合操作(NSMutableSet方法)/83
6.4 容器在拼图游戏中的使用/83
6.4.1 拼图游戏的设计/83
6.4.2 相关定义/84
6.4.3 Piece类与字典/87
6.4.4 Puzzle类与字典和数组/89
6.5 小结/93
第7章 文件系统/94
7.1 iOS文件系统概述/95
7.2 通过模拟器看应用的包裹/96
7.3 文件管理器/97
7.4 NSString的路径功能/98
7.5 拼图游戏中的文件管理/99
7.6 小结/107
第8章 绘图进阶/108
8.1 屏幕旋转/109
8.2 绘制曲线和切割图案/111
8.3 高级绘图在拼图游戏中的应用/114
8.4 小结/122
第9章 触摸事件与手势识别/123
9.1 触摸事件、视图结构与响应顺序/124
9.2 官方SDK中的手势识别器/126
9.3 PhotoJigsaw中对触摸的响应/128
9.4 自定义的手势识别器/135
9.5 小结/136
第10章 同时性编程与定时器/137
10.1 同时性编程概述/138
10.2 操作队列/140
10.3 拼图游戏中的同时性编程/142
10.4 定时器及其在拼图游戏中的使用/146
10.5 小结/148
第11章 动画/150
11.1 iOS动画技术概述/151
11.2 用图像视图来逐帧显示动画/153
11.3 视图的动画技术/154
11.4 CogRadio应用/156
11.5 CogRadio应用中的动画/160
11.6 小结/166
第12章 媒体播放/167
12.1 音频播放/168
12.1.1 使用系统声音服务来播放音效/168
12.1.2 音频播放器/169
12.1.3 音乐播放器/169
12.2 视频播放/171
12.2.1 电影播放器/171
12.2.2 在网页视图中嵌入播放/174
12.3 CogRadio中的多媒体/175
12.4 小结/178
第13章 cocos2d开发入门/179
13.1 cocos2d简介/181
13.1.1 导演/181
13.1.2 场景和层/182
13.1.3 精灵与动作/183
13.2 创建cocos2d工程并添加场景/184
13.3 添加按钮、精灵和动作/185
13.4 粒子系统/187
13.5 小结/193
第14章 连接设备/195
14.1 游戏工具箱简介/196
14.1.1 游戏中心/196
14.1.2 点对点连接/198
14.1.3 语音聊天/198
14.2 实现点对点连接/199
14.3 OpenFeint游戏平台/203
14.4 小结/209
第15章 加速度传感器/210
15.1 加速度传感器概述/211
15.2 飞机躲子弹游戏/212
15.3 倾斜设备来控制飞机/216
15.4 分离重力成分/219
15.5 小结/221
第16章 地图与连接服务器/222
16.1 地图编程概述/223
16.2 实战:地图编程/224
16.3 与服务器交互/227
16.4 实战:与服务器交互/229
16.5 小结/235
第17章 Objective-C与XCode进阶/236
17.1 NSLog扩展/237
17.2 范畴的使用/239
17.3 读写器的内存管理/240
17.4 KVO/242
17.5 单例/243
17.6 运行时的对象查询/245
17.7 调试器的巧用/246
17.8 XCode快捷键/247
17.9 小结/249
第18章 iPad应用的开发证书与营销/250
18.1 开发证书的获取/251
18.2 联机调试/254
18.3 应用名字、说明以及图片/258
18.4 应用的提交/261
18.5 应用的推广/262
18.6 应用升级与销售技巧/263
18.7 iPad开发的长期策略/265
18.8 小结/266