第1篇 iPhone准备 2
第1章 第一个“Hello World”程序 2
1.1 iPhone简介 2
1.1.1 iPhone的发展 2
1.1.2 iPhone编程的特点 3
1.2 构建开发环境 3
1.2.1 Xcode的下载 3
1.2.2 Xcode的安装 4
1.3 编写“Hello World”程序 5
1.3.1 创建项目 5
1.3.2 编译、连接、运行 7
1.3.3 iPhone Simulator 8
1.3.4 使用Interface Builder 9
1.3.5 编写“HelloWorld”程序 11
1.3.6 查看源文件 13
1.4 小结 14
1.5 习题 14
第2篇 iPhone界面 18
第2章 视图 18
2.1 UIView的简介 18
2.1.1 UIView的分类 18
2.1.2 Objects窗口 19
2.2 视图的创建 19
2.2.1 手动创建视图 20
2.2.2 代码创建视图 21
2.2.3 简单控件视图介绍 22
2.3 视图的使用 22
2.3.1 警告视图和按钮控件视图的使用 22
2.3.2 动作表单和按钮控件视图 28
2.3.3 Lable视图和分段控件的使用 32
2.3.4 视图的切换 34
2.4 小结 37
2.5 习题 37
第3章 文本框、键盘、文本视图 43
3.1 文本框 43
3.1.1 文本框的创建 43
3.1.2 文本框的常用的属性设置 44
3.2 键盘 45
3.2.1 键盘的打开 45
3.2.2 键盘输入设置 47
3.2.3 键盘的关闭 48
3.3 文本视图 54
3.3.1 文本视图的创建 55
3.3.2 文本视图中常用的属性设置 55
3.3.3 文本视图的应用 57
3.4 小结 59
3.5 习题 59
第4章 图像和绘图 63
4.1 图像视图的创建 63
4.1.1 静态创建图像视图 63
4.1.2 动态创建图像视图 64
4.2 图像的属性 66
4.2.1 图像的显示方式 66
4.2.2 图像的显示位置 67
4.2.3 图像的其他属性 74
4.3 图像切换 75
4.4 绘图 77
4.4.1 图形上下文 77
4.4.2 数据类型 78
4.5 绘制路径 78
4.5.1 绘制直线 78
4.5.2 绘制矩形 83
4.5.3 绘制圆 85
4.5.4 其他的路径指令 87
4.5.5 iPhone Simulator不显示绘制内容的情况 88
4.6 绘制位图 90
4.6.1 使用CGContextDrawlmage指令绘制位图 91
4.6.2 使用CGContextDrawTiledlmage指令绘制位图 92
4.7 阴影 94
4.8 绘制文字 95
4.8.1 选择字体 95
4.8.2 设置文字绘制模式 95
4.8.3 设置字体变换矩阵 96
4.8.4 绘制文字 96
4.8.5 文字的综合应用 96
4.9 小结 98
4.10 习题 98
第5章 网页视图和滚动视图 102
5.1 网页视图的创建 102
5.1.1 静态创建网页视图 102
5.1.2 动态创建网页视图 103
5.2 网页视图的加载 104
5.2.1 加载网址loadRequest 105
5.2.2 加载HTML代码loadHTMLString 106
5.3 网页视图的属性 108
5.3.1 页面自动缩放scalespageToFit 108
5.3.2 自动识别电话号码detectsPhoneNumbers 109
5.4 网页视图的应用 111
5.4.1 导航应用 111
5.4.2 加载时重要的调用函数 114
5.4.3 加载的视图Activity IndicatorView 114
5.5 滚动视图 118
5.5.1 滚动视图的创建 118
5.5.2 滚动视图的属性设置 119
5.6 小结 126
5.7 习题 126
第6章 控制器 129
6.1 视图控制器 129
6.1.1 视图控制器的添加 129
6.1.2 视图控制器的使用 130
6.1.3 视图的切换 134
6.1.4 视图的旋转 137
6.2 导航控制器 141
6.2.1 导航控制器和视图控制器的关系 141
6.2.2 导航控制器的显示 142
6.2.3 在导航栏的设置 143
6.2.4 导航控制器的应用 146
6.3 标签栏控制器 149
6.3.1 使用项目类型Tabbed Applacation创建标签栏控制器 149
6.3.2 使用代码创建标签栏控制器 152
6.3.3 标签栏控制器和导航控制器的应用 156
6.4 小结 160
6.5 习题 160
第7章 表视图 167
7.1 表视图的创建 167
7.1.1 静态创建 167
7.1.2 动态创建 168
7.2 填充表视图 169
7.2.1 表单元 169
7.2.2 添加图像 174
7.2.3 添加页眉页脚 176
7.3 表单元的设置 178
7.3.1 缩进 178
7.3.2 响应所选项 180
7.3.3 字体大小和行高的修改 182
7.3.4 添加选取标记 186
7.3.5 删除表单元 190
7.3.6 添加表单元 193
7.3.7 移动表单元 195
7.4 分组的表视图 197
7.4.1 分组表视图的创建 197
7.4.2 分组表视图的数据添加和显示 198
7.4.3 添加索引 204
7.4.4 添加搜索功能 206
7.5 小结 212
7.6 习题 212
第8章 动画 217
8.1 基本动画 217
8.1.1 开始准备动画 217
8.1.2 动画的持续时间 217
8.1.3 动画的属性变化曲线 217
8.1.4 结束动画 218
8.2 过渡动画 218
8.2.1 过渡动画 218
8.2.2 两视图的切换 219
8.2.3 添加图片切换之间的过渡动画 221
8.3 NSTimer类 224
8.3.1 NSTimer类的使用 224
8.3.2 平移 225
8.3.3 旋转 227
8.3.4 缩放 228
8.4 小结 230
8.5 习题 230
第3篇 iPhone技术 234
第9章 地图 234
9.1 位置 234
9.1.1 显示位置信息 234
9.1.2 管理和提供位置 234
9.1.3 位置方向 240
9.2 地图的应用 244
9.2.1 地图的创建 244
9.2.2 地图的类型 246
9.2.3 当前位置 248
9.2.4 指定位置 250
9.2.5 标记 252
9.2.6 在标记上显示位置 254
9.2.7 标注 256
9.3 小结 258
9.4 习题 258
第10章 照片 263
10.1 iPhone Simulator上的照片处理 263
10.1.1 添加照片 263
10.1.2 幻灯片的设置 264
10.1.3 删除照片 265
10.2 UIImagePickerController 266
10.2.1 创建UIImagePickerController对象 266
10.2.2 UIImagePickerController中的设置 268
10.2.3 可编辑的照片 269
10.2.4 拍摄的照片 271
10.2.5 照片的其他设置 272
10.2.6 照片的应用 272
10.3 小结 275
10.4 习题 275
第11章 音频和视频 278
11.1 音频 278
11.1.1 系统声音 278
11.1.2 声音播放器 281
11.1.3 录音 283
11.1.4 访问音乐库中的音频文件 286
11.2 视频 289
11.2.1 视频的相关操作 289
11.2.2 视频的应用 290
11.3 小结 292
11.4 习题 292
第12章 选择器 294
12.1 日期选择器 294
12.1.1 创建日期选择器 294
12.1.2 日期选择器的显示类型 295
12.1.3 日期选择器的应用 296
12.2 自定义选择器 298
12.2.1 创建自定义选择器 298
12.2.2 填充自定义选择器 299
12.2.3 自定义选择器的应用 303
12.2.4 创建分栏自定义选择器 305
12.2.5 分栏自定义选择器的应用 307
12.3 小结 309
12.4 习题 309
第13章 通讯录和电子邮件 313
13.1 通讯录 313
13.1.1 显示并选择通讯录上的联系人 313
13.1.2 显示并编辑个人信息 318
13.1.3 添加联系人 322
13.1.4 完善联系人信息 326
13.2 电子邮件 330
13.2.1 电子邮件的创建 330
13.2.2 电子邮件的应用 331
13.3 小结 334
13.4 习题 334
第14章 触摸及手势 339
14.1 触摸 339
14.1.1 触摸的方法 339
14.1.2 触摸的应用 340
14.2 手势 342
14.2.1 手势识别器 342
14.2.2 轻拍 342
14.2.3 捏 345
14.2.4 滑动 347
14.2.5 旋转 349
14.2.6 移动 351
14.2.7 长按 352
14.3 小结 354
14.4 习题 354