前言 1
第一部分 Swift基础 9
第1章 新手入门 9
1.1 Apple开发者计划 11
1.2使用Xcode创建第一个项目 13
1.3开发一个简单的Swift应用 26
1.4使用iOS模拟器 30
1.5小结 32
第2章 Swift基础 33
2.1 Swift编程语言 34
2.2 Playground 36
2.3注释 38
2.4流程控制 38
2.5变量和常量 42
2.6运算符 43
2.7类型 44
2.8处理字符串 45
2.9函数和闭包 56
2.10小结 63
第3章 Swift面向对象应用开发 64
3.1类和对象 64
3.2结构体 77
3.3模块 78
3.4 Swift标准库、Foundation、Cocoa和Cocoa Touch 78
3.5数据 79
3.6错误处理 81
3.7内存管理 83
3.8 Cocoa和Cocoa Touch采用的设计模式 84
3.9应用的结构 88
3.10小结 89
第二部分 构建一个OS X应用 93
第4章 构建OS X记事本应用的前期准备工作 93
4.1设计这个OS X记事本应用 93
4.2创建OS X应用项目 97
4.3定义文档类型 101
4.4添加图标 106
4.5小结 108
第5章 在OS X中处理文档 109
5.1 NSDocument类 109
5.2在文档中存储数据 110
5.3存储文本 111
5.4基本的UI 120
5.5小结 128
第6章 用户界面和iCloud 129
6.1更新UI 129
6.2附件和文件扩展名的UI 133
6.3增强附件系统 154
6.4通过拖曳添加附件 159
6.5 iCloud 166
6.6 iCloud基础 167
6.7小结 170
第三部分 构建一个iOS应用 173
第7章 构建iOS记事本应用的前期准备工作 173
7.1设计这个iOS应用 174
7.2创建iOS应用项目 179
7.3为iOS应用启用iCloud 183
7.4定义文档类型 187
7.5小结 189
第8章 处理iCloud中的文件 190
8.1应用沙盒 190
8.2 iCloud的可用性 192
8.3创建文档列表视图控制器 192
8.4定义Document类 204
8.5列出文档 210
8.6创建文档 218
8.7从iCloud中下载文件 221
8.8删除文档 225
8.9重命名文档 231
8.10小结 235
第9章 在iOS中处理文档 236
9.1添加显示笔记的视图 236
9.2编辑和保存文档 244
9.3小结 246
第10章 处理文件和文件类型 247
10.1设计附件的界面 247
10.2列出附件 251
10.3处理冲突 261
10.4创建快速查看缩略图 267
10.5小结 269
第11章 图像和删除 270
11.1添加附件 270
11.2添加图像附件 272
11.3查看附件 277
11.4删除附件 286
11.5小结 293
第12章 支持iOS生态系统 294
12.1通过UIActivityController实现分享 294
12.2 Handoff 297
12.3可搜索性 301
12.4小结 303
第13章 扩展iOS应用 304
13.1使用Spotlight索引扩展搜索 305
13.2“今天”小组件 315
13.3小结 323
第14章 多媒体、联系人、位置和通知 324
14.1位置附件 324
14.2音频附件 338
14.3视频附件 350
14.4联系人附件 356
14.5通知 360
14.6小结 371
第15章 改进这个iOS应用 372
15.1朗读文本 372
15.2在SFSafariViewController中打开链接 374
15.3设置 380
15.4撤销功能 381
15.5图像滤镜 384
15.6全球化应用 388
15.7辅助功能 396
15.8分屏多任务 400
15.9小结 401
第四部分 扩展应用 405
第16章 构建一个watchOS应用 405
16.1为Apple Watch设计 406
16.2设计我们的watchOS应用 407
16.3创建watchOS扩展 409
16.4小结 441
第17章 代码质量和应用分发 442
17.1调试 442
17.2 Instruments 444
17.3测试 449
17.4在同一个项目中同时使用Objective-C和Swift 453
17.5 App Store 454
17.6小结 457