《iOS9开发快速入门》全面、系统地介绍了iOS 9开发技术。本书提供了大量实例,供读者实战演练。另外,本书内容讲解详细,示例丰富,书中每一个知识点都配备了对应的实例和运行结果图,这样可以使读者在学习时轻松上手。《iOS9开发快速入门》共分3篇。第1篇介绍iOS 9的新功能、iOS 9的开发工具Xcode 7.0、第1个iOS 9应用程序的开发以及Swift语言基础;第2篇介绍自定义视图和视图控制器、文字显示视图、图形图像、网页操作、表视图、导航控制器以及标签栏控制器;第3篇介绍提醒处理、定位服务与地图、访问内置的应用程序、多媒体、动画、触摸与手势等。《iOS9开发快速入门》特为没有iOS 9技术基础的新手编写。通过对本书的学习,读者可以基本建立起iOS 9技术的思想框架,并且对iOS 9开发的过程有一个初步的了解。所以,本书不仅适合作为大中专院校的教材,也适合iOS 9技术爱好者自学使用。
刘丽霞,邱晓华,武警工程大学教师,负责教授计算机软件开发课程,具有丰富的教学和实践经验。擅长iPhone、iPad应用开发。熟悉Objective-C、Xcode等开发工具。
目 录
第1章 iOS 9开发概述 1
1.1 iOS 9新特性 1
1.1.1 Siri语音助手智能化 1
1.1.2 新增News新闻聚合应用 1
1.1.3 ApplePay支持购物Wallet取代Passbook 1
1.1.4 地图引入Transit通勤路线功能 2
1.1.5 备忘录进入核查清单组件 3
1.1.6 键盘加入Shortcut Bar 3
1.1.7 iPad引入双屏模式,支持QuickType键盘 3
1.2 构建开发环境——Xcode 7.0 4
1.2.1 安装Xcode 7.0 4
1.2.2 绑定苹果开发者账号 5
1.2.3 更新文件和组件 6
1.2.4 帮助文档 8
1.3 编写**个iOS 9应用 9
1.3.1 创建项目 9
1.3.2 编译、连接、运行 11
1.3.3 iOS模拟器介绍 12
1.3.4 编辑界面 16
1.3.5 编写代码 19
1.3.6 定制应用程序图标 23
1.4 小结 25
第2章 认识全新的Xcode 7.0 26
2.1 Xcode 7.0的新特性 26
2.1.1 UI测试 26
2.1.2 免真机调试 27
2.1.3 Debug 27
2.1.4 iOS 9界面适配利器——UIStackView 27
2.2 解剖Xcode 7.0界面 27
2.2.1 导航窗口 27
2.2.2 工具窗口 28
2.2.3 编辑窗口 30
2.2.4 目标窗口 30
2.3 Xcode 7.0项目结构 31
2.4 调试程序 32
2.5 小结 34
第3章 Swift基础语法 35
3.1 常量和变量 35
3.1.1 常量 35
3.1.2 变量 38
3.2 数据类型 38
3.2.1 整数类型 39
3.2.2 浮点类型 41
3.2.3 字符类型 41
3.2.4 布尔类型 42
3.2.5 可选类型 42
3.2.6 类型别名 43
3.3 字面值 43
3.4 Swift特有字面值以及数据类型——元组 43
3.5 运算符 44
3.5.1 元的介绍 44
3.5.2 赋值运算符 44
3.5.3 一元加运算符 45
3.5.4 一元减运算符 45
3.5.5 算数运算符 46
3.5.6 自增、自减运算符 47
3.5.7 比较运算符 48
3.5.8 逻辑运算符 49
3.5.9 位运算符 50
3.5.10 复合运算符 51
3.5.11 求字节运算符 52
3.5.12 强制解析运算符 52
3.5.13 区间运算符 53
3.5.14 溢出运算符 54
3.6 类型转换 55
3.6.1 整数的转换 55
3.6.2 整数与浮点数的转换 55
3.7 字符串 56
3.8 集合类型 57
3.8.1 数组 57
3.8.2 字典 59
3.9 程序控制结构 61
3.9.1 顺序结构 61
3.9.2 选择结构 61
3.9.3 循环结构 66
3.9.4 跳转语句 69
3.9.5 标签语句 71
3.10 函数 72
3.10.1 函数的介绍 73
3.10.2 无参函数的使用 73
3.10.3 有参函数的使用 74
3.10.4 函数的参数的注意事项 75
3.10.5 函数的返回值 78
3.10.6 函数类型 80
3.10.7 函数的嵌套 82
3.11 闭包 85
3.11.1 闭包表达式 85
3.11.2 Trailing闭包 88
3.11.3 捕获值 89
3.12 小结 90
第4章 Swift高级语法 91
4.1 枚举 91
4.1.1 定义枚举 91
4.1.2 定义枚举成员 92
4.1.3 实例化枚举的对象 93
4.1.4 枚举成员与switch语句的匹配 93
4.1.5 访问枚举中成员的原始值 94
4.1.6 相关值 96
4.2 类 96
4.1.1 创建类 97
4.1.2 实例化对象 97
4.1.3 属性 97
4.1.4 方法 102
4.1.5 下标脚本 105
4.1.6 可选链接 107
4.3 继承 109
4.3.1 继承的实现 109
4.3.2 重写 111
4.3.3 禁止重写 116
4.3.4 类型检测 116
4.4 结构 120
4.4.1 定义结构 120
4.4.2 实例化结构对象 120
4.4.3 在结构中定义内容 121
4.5 构造方法和析构方法 124
4.5.1 值类型的构造器 124
4.5.2 类的构造器 127
4.5.3 可失败构造器 133
4.5.4 析构方法 134
4.6 扩展和协议 134
4.6.1 扩展 135
4.6.2 协议 138
4.6.3 可选协议 142
4.6.4 使用协议类型 143
4.6.5 协议的继承 145
4.6.6 协议的组合 146
4.6.7 检查协议的一致性 147
4.6.8 委托 149
4.7 运算符重载 150
4.7.1 算数运算符重载 151
4.7.2 前置运算符和后置运算符重载 151
4.7.3 复合运算符重载 152
4.7.4 比较运算符重载 153
4.7.5 自定义运算符 154
4.8 泛型 158
4.8.1 泛型函数 158
4.8.2 泛型类型 159
4.8.3 具有多个类型参数的泛型 162
4.8.4 类型约束 162
4.8.5 关联类型 163
4.9 错误处理 168
4.9.1 抛出错误 168
4.9.2 捕获错误和处理错误 169
4.10 小结 170
第5章 自定义视图和视图控制器 171
5.1 视图库介绍 171
5.2 自定义视图的创建 172
5.2.1 静态创建自定义视图 172
5.2.2 动态创建自定义视图 174
5.3 视图控制器 176
5.3.1 创建视图控制器 176
5.3.2 定义初始视图 179
5.4 视图的实现 180
5.4.1 切换视图 180
5.4.2 旋转视图 183
5.5 小结 187
第6章 文字显示视图 188
6.1 标签控件Lable 188
6.1.1 创建标签 188
6.1.2 定制标签 190
6.2 文本框控件 192
6.2.1 创建文本框 193
6.2.2 定制文本框 194
6.2.3 键盘的显示 195
6.2.4 设置键盘的显示类型 198
6.2.5 关闭键盘 200
6.2.6 文本框的应用 205
6.3 文本视图 208
6.3.1 创建文本视图 209
6.3.2 定制文本视图 211
6.3.3 文本视图中键盘的退出 212
6.3.4 文本视图的应用——阅读浏览器 216
6.4 小结 220
第7章 图形图像 221
7.1 图像视图 221
7.1.1 创建图像视图 221
7.1.2 显示图像 223
7.2 定制图像视图 227
7.2.1 显示模式 227
7.2.2 改变位置 229
7.2.3 改变大小 234
7.2.4 旋转 236
7.2.5 缩放 237
7.3 图像视图的应用——图片浏览器 238
7.4 绘制图形术语简介 241
7.4.1 图形上下文 241
7.4.2 图形上下文的分类 242
7.4.3 Quartz2D定义的数据类型 242
7.4.4 获取当前的图形上下文 243
7.4.5 使用Quartz 2D绘图的步骤 243
7.5 绘制路径 244
7.5.1 绘制线段 244
7.5.2 绘制矩形 248
7.5.3 路径函数总结 250
7.5.4 为图形添加特效 250
7.6 绘制位图 256
7.6.1 绘制单个位图 256
7.6.2 绘制多个位图 257
7.7 绘制文字 258
7.7.1 文字设置 259
7.7.2 设置转换矩阵 259
7.7.3 填充字体 259
7.7.4 设置绘制模式 261
7.8 小结 263
第8章 网页操作 264
8.1 创建网页视图 264
8.2 加载内容 266
8.2.1 加载网页内容 266
8.2.2 加载HTML代码 268
8.3 定制网页视图 269
8.3.1 自动识别网页内容 270
8.3.2 自动缩放 271
8.4 添加导航 273
8.4.1 导航动作 273
8.4.2 加载时常用方法 276
8.5 网页视图的应用——网页浏览器 277
8.6 小结 284
第9章 表视图 285
9.1 创建表视图 285
9.2 内容填充 287
9.2.1 填充内容的步骤 287
9.2.2 填充字符串 289
9.2.3 填充图片 291
9.2.4 添加页眉页脚 293
9.2.5 添加索引 294
9.3 设置表单元 295
9.3.1 设置显示风格 295
9.3.2 设置标记 297
9.3.3 设置行高 300
9.4 响应表视图 302
9.4.1 选择行 302
9.4.2 删除行 304
9.4.3 添加行 306
9.4.4 移动行 309
9.4.5 缩进 311
9.5 创建分组表 312
9.6 填充分组表 314
9.6.1 填充Grouped风格的分组表 315
9.6.2 填充Plain风格的分组表 316
9.7 表视图的实现 319
9.8 小结 323
第10章 导航控制器和标签栏控制器 324
10.1 导航控制器 324
10.1.1 导航控制器的组成 324
10.1.2 导航控制器的创建 325
10.1.3 改变导航控制器的关联视图 326
10.1.4 实现导航 328
10.1.5 添加标题 330
10.1.6 设置导航栏颜色 331
10.1.7 添加左右按钮 334
10.1.8 设置返回按钮 340
10.2 标签栏控制器 341
10.2.1 标签栏控制器的创建 341
10.2.2 设置标签栏控制器 345
10.3 导航控制器和标签栏控制器应用——电话簿 354
10.4 小结 361
第11章 提醒处理 362
11.1 警告视图 362
11.1.1 创建警告视图 362
11.1.2 显示警告视图 363
11.1.3 警告视图的设置 364
11.1.4 响应警告视图 367
11.2 动作表单 371
11.2.1 动作表单的创建 371
11.2.2 显示动作表单 372
11.2.3 响应动作表单 373
11.3 小结 377
第12章 选择操作 378
12.1 日期选择器 378
12.1.1 日期选择器的创建 378
12.1.2 定制日期选择器 380
12.1.3 日期选择器应用——生日管理器 385
12.2 自定义选择器 391
12.2.1 自定义选择器的创建 391
12.2.2 定制自定义选择器 393
12.2.3 自定义选择器应用——头像更换 396
12.3 小结 401
第13章 定位服务与地图 402
13.1 定位服务 402
13.1.1 获取位置数据 402
13.1.2 管理与提供位置服务 403
13.1.3 位置方向 407
13.2 创建地图 407
13.2.1 静态创建地图 407
13.2.2 动态创建地图 408
13.3 定制地图 409
13.3.1 设置显示模式 410
13.3.2 显示当前的位置 413
13.3.3 指定位置 415
13.3.4 添加标记 417
13.3.5 在一定范围内显示指定位置 420
13.3.6 获取地图的缩放级别 421
13.3.7 标注 423
13.3.8 将位置转换为地址 425
13.4 地图的应用——地图浏览器 430
13.5 小结 437
第14章 访问内置的应用程序 438
14.1 地址簿 438
14.1.1 访问地址簿 438
14.1.2 添加联系人 440
14.1.3 显示个人信息 444
14.1.4 将第三方联系人信息添加到地址簿 446
14.2 电子邮件 448
14.2.1 访问系统电子邮件 448
14.2.2 发送系统电子邮件 450
14.2.3 SMS短信的访问以及发送 456
14.3 日历 458
14.3.1 单个事件界面 458
14.3.2 添加或编辑日历事件界面 462
14.4 小结 465
第15章 多媒体 466
15.1 照片库 466
15.1.1 操作照片库 466
15.1.2 访问照片库 470
15.1.3 定制照片 471
15.1.4 使用相机 474
15.1.5 照片库的应用——背景选择 477
15.2 音频 481
15.2.1 系统声音 481
15.2.2 音频播放 483
15.2.3 录音 485
15.2.4 访问音乐库 489
15.2.5 音频的应用——MP3播放器 491
15.3 视频 498
15.4 小结 500
第16章 动画 501
16.1 UIView动画 501
16.1.1 创建动画块 501
16.1.2 修改动画块 503
16.1.3 过渡动画 505
16.2 CATransition动画 509
16.2.1 CATransition的实现动画 509
16.2.2 公开动画效果 511
16.2.3 非公开动画效果 513
16.3 NSTimer动画 515
16.3.1 NSTimer的创建 515
16.3.2 平移 515
16.3.3 旋转 517
16.3.4 缩放 519
16.4 小结 521
第17章 触摸与手势 522
17.1 触摸 522
17.1.1 触摸阶段 522
17.1.2 触摸方法 523
17.2 手势 525
17.2.1 轻拍 525
17.2.2 捏 529
17.2.3 滑动 531
17.2.4 旋转 533
17.2.5 移动 535
17.2.6 长按 535
17.2.7 自定义手势 538
17.3 小结 543
iOS9开发快速入门pdf