基本*息
书名:iOS移动开发从入门到 通
价:99.00元
作者: 发展、 亮
出版社:清华 学出版社
出版日期:2017-03-01
ISBN:9787302462026
字数:
页码:
版次:1
装帧: 装-胶订
开本:128开
商品重量:0.4kg
编辑推荐
本书采用丰富 实例,直 码展示,向读者形象地展现 在创建一款 iOS应用程序时,所需要 分知识 技巧。通过对本书 学习,读者 以建立起iOS 10技* 思 框架,并且对iOS 10开发 过程有一 面 , 效地开发出自己 iOS应用程序。
内容提要
本书由iOS开发工程师 编撰,系 地介绍 使用iOS 10 Swift 3 Xcode 8开发移动应用 关键技*。本书 分三篇,*篇为基础篇, 要介绍 iOS开发基础知识, 括iOS系 历 、Swift 3.0语言、UI界面构建技*、 图控 、常用 控 、表 合 图、 图 层、声音、 频、动 等。 二篇为进阶篇, 要介绍 Alamofire*络 、数据 持久化、多线程、CoreText、CoreI*ge、Storyboard、自动化测试、*能分析、本地化、加密与安 等实用技*。 三篇为实例篇,通过对实 层、表现层 逻辑层三层相关技* 讲 ,向读者详细展示 MVC设 模式在项目开发 应用 式,并*终创建一 成熟 商业项目。本书采用丰富 实例,直 码展示,向读者形象地讲 在创建一款 iOS应用程序时,所需要 分技巧, 助读者轻松 握并 效开发iOS程序。本书适合iOS开发新 、iOS程序员、iPhone开发人员、iPad开发人员使用,也 以作为相关 训 构 校相关 业 学用书。
目录
目 录
1章 开发 备 1
1.1iOS移动开发现状 2
1.1.1iOS 历 2
1.1.2iOS 10 十 变化 4
1.1.3iOS应用开发 八 5
1.2iOS 10 新功能 5
1.2.1SiriKit 6
1.2.2Proa*ive Suggestions
(预建议) 6
1.2.3Integr*ing with the Messages
App 7
1.2.4Us Notific*ions 7
1.2.5Speech Recognition 8
1.2.6Wide Color 9
1.2.7Adapting to the True Tone
Display 9
1.2.8Widget Enhancements 9
1.2.9Security and Privacy
Enhancements 9
1.3 成为一名iOS开发者 11
1.3.1硬 上 需求 11
1.3.2加入Apple开发者 11
1.3.3下载安装Xcode 模拟 13
1.3.4创建开发 发布配置* Provisioning Profile 14
1.4 创建一 基本 iOS项目 17
1.4.1项目 创建 17
1.4.2设置项目 *息 19
1.4.3设置应用 Icon图标 19
1.4.4设置应用 Launch图 20
1.4.5编译并运行项目 22
1.5iOS应用 *命周期 23
1.5.1iOS应用程序 状态 24
1.5.2演示iOS应用程序 各种
状态 25
1.6 小结 26
2章 Xcode 8 IDE iOS模拟 27
2.1Xcode 8 使用 28
2.1.1工具栏 使用 28
2.1.2导 功能介绍 29
2.1.3项目导 内容 30
2.1.4创建一 组 Swift* 30
2.1.5在项目 搜 * 33
2.1.6 码 查找 替换 36
2.1.7 码 Debug调试 36
2.2iOS模拟 使用 39
2.2.1使用多种iOS模拟 39
2.2.2iOS模拟 向 切换 40
2.2.3iOS模拟 语言 切换 40
2.2.4截取模拟 屏幕 41
2.2.5应用程序 出 删 41
2.3 小结 42
3章 Swift 3.0 基础知识 43
3.1Swift 基本概念 44
3.1.1Swift语言 44
3.1.2Swift常量 变量 义 45
3.1.3常量 变量 输出 46
3.1.4注释 47
3.1.5Playground 47
3.2 数据类型与运算 49
3.2.1布尔类型 49
3.2.2Int类型及实例属* 50
3.2.3浮 类型及实例属* 51
3.2.4字符 字符串 51
3.2.5元组类型 54
3.2.6一元、二元 三元运算符 55
3.2.7 较运算符 56
3.3 循环语句 判断语句57
3.3.1for循环 57
3.3.2while循环语句 58
3.3.3repe*-while循环语句 59
3.3.4if 判断语句 60
3.3.5switch 判断语句 60
3.3.6continue语句 forthrou
语句 61
3.4 数组 字 62
3.4.1数组 62
3.4.2多维数组 64
3.4.3数组 遍历 65
3.4.4字 66
3.5 小结 68
4章 Swift 3.0 进阶内容 69
4.1 函数 70
4.1.1函数 义 调用 70
4.1.2为参数设置默认值 71
4.1.3设置 变 函数参数数量 71
4.1.4函数作为参数 返回类型 72
4.1.5元组作为函数 返回类型,
实现多 返回值 74
4.1.6使用函数类型 74
4.1.7函数 输入输出参数 75
4.1.8函数 嵌套 76
4.1.9函数 递归用法 76
4.1.10常用 内置函数 77
4.2 枚举 结构 79
4.2.1枚举 79
4.2.2结构 83
4.3 类 85
4.3.1类 创建 85
4.3.2类属* set get 法 88
4.3.3类属* willSet didSet
法 89
4.3.4类 静态 法 90
4.3.5类 析构 91
4.3.6类 继承 92
4.3.7类 迟加载属*l*y 93
4.3.8类 引用 征 95
4.3.9类型检查 95
4.3.10Any Anyob*e* 98
4.4 扩展、协议 其他 99
4.4.1扩展 99
4.4.2协议 101
4.4.3问号 感叹号! 103
4.5 小结 105
5章 图UIView 层CALay 106
5.1 图UIView 107
5.1.1UIView概述 107
5.1.2UIView 外 属* 109
5.1.3UIView 几何属* 112
5.1.4UIView 嵌套 层次关系 114
5.1.5UIView 交互属* 116
5.1.6UIView 变形 作 118
5.1.7自 义UIView 图 120
5.2CALay层 124
5.2.1CALay边框 124
5.2.2CALay 影 125
5.2.3CALay圆角 126
5.2.4CALay渐变 127
5.3 小结 129
6章 图控 UIViewControll130
6.1UIViewControll 图控 概述 131
6.1.1 图控 与MVC 131
6.1.2创建一 图控 132
6.1.3以模态 式弹出 图控 136
6.1.4 图控 *命周期 139
6.1.5 图控 UIScrollView 141
6.2UITabBarControll 145
6.2.1创建一 UITabBarControll 145
6.2.2改变Tab bar 位置 147
6.2.3改变UITabBarControll
引 149
6.2.4在Tab图标上显示角标 149
6.3UINavig*ionControll 150
6.3.1创建一 UINavig*ionControll
151
6.3.2UINavig*ionControll 图
入栈 出栈 153
6.3.3导 栏 工具栏 显示
隐藏 157
6.3.4导 栏样式 修改 157
6.4 导 控 标 控 158
6.5 小结 161
7章 常用经 控 162
7.1 控 概述 163
7.1.1何为Target-A*ion 163
7.1.2UIControl类 法 属* 165
7.1.3让我们一起动 来实现一 UIControl吧 167
7.2UIButton 概述 168
7.3UILabel*本 图 171
7.3.1UILabel 创建 *案显示 172
7.3.2UILabel 理过 *案 173
7.3.3UILabel 影 174
7.4UISwitch开关 图 175
7.4.1UISwitch 创建 175
7.4.2UISwitch 开关使用 176
7.5UIRefreshControl 刷新控 176
7.6UITextField*本框控 178
7.6.1UITextField 创建 基本
应用 179
7.6.2UITextField 背景图 180
7.6.3UITextField 浮动 图(Ovlay view) 181
7.6.4UITextField 理UITextFieldDeleg*e 183
7.7 小结 185
8章 UITableView UIColle*ionView
186
8.1UITableView概述 187
8.1.1UITableViewCell 元格 187
8.1.2创建一 简 表格 189
8.1.3自 义 元格UITableViewCell
193
8.1.4自 义 元格 度 196
8.1.5给表格添加章节 引 198
8.1.6 元格 选择与取 选择 201
8.1.7 元格 *入 删 204
8.1.8 移动 元格 位置 209
8.1.9表格之间 嵌套 213
8.2UIColle*ionView概述 219
8.2.1UIColle*ionView 实现
原理 220
8.2.2创建一 UIColle*ionView对象并添加 事 221
8.3 小结 225
9章 触屏事 触 势 226
9.1 触 事 监测 227
9.1.1对触 事 阶段 监测 227
9.1.2监测是否触 到某 图 229
9.1.3实现图像 图 拖动 231
9.2 触 势 使用 232
9.2.1实现 触 势 233
9.2.2实现 触 势 235
9.2.3实现 按 势 监测 236
9.2.4捏合 势 监测 238
9.33D Touch 使用 239
9.4 小结 242
10章 动 、声音与 频 243
10.1 作动 244
10.1.1UIView 动 244
10.1.2使用UII*geView播放帧
动 249
10.1.3位移关键帧动 作 251
10.2音频 播放 254
10.2.1使用System Sound Svices
播放简短声音 255
10.2.2使用AVAudioPlay播放
音乐 256
10.3 频 播放 260
10.3.1使用AVPlay播放影 260
10.3.2实现影 功能 262
10.4小结 265
11章 Alamofire*络请求框架 266
11.1Alamofire 今* 267
11.1.1Alamofire 动 成 267
11.1.2Alamofire *络是否 通
接 式 269
11.1.3Alamofire GET POST
请求 272
11.1.4Alamofire * 上传及
进度显示 274
11.1.5Alamofire * 下载及
进度显示 278
11.2小结 279
12章 UIWebView与HTML 5技* 280
12.1UIWebView 使用 281
12.1.1使用UIWebView加载*页 281
12.1.2使用UIWebView加载HTML
字符串 GIF动 283
12.1.3使用UIWebView加载本地
*页 286
12.1.4使用回调原*
程序 289
12.2创建一 简 笔 本 292
12.2.1创建一 编辑 div 292
12.2.2设置*页 CSS样式 293
12.2.3添加*入笔 图 法 294
12.2.4添加删 图 获得笔
法 295
12.2.5实现笔 本 用户界面 296
12.3小结 298
13章 数据 持久化 299
13.1 析plist* 300
13.1.1创建 析plist* 300
13.1.2将*息写入plist* 303
13.2使用CoreD*a进行数据 持久化 304
13.2.1创建Core D*a实 并*入
数据 306
13.2.2检 Core D*a 数据 308
13.2.3修改 删 Core D*a数据 310
13.3小结 312
14章 多线程技* 313
14.1多线程 概念 314
14.1.1任 、进程 线程 314
14.1.2线程 Sck space 315
14.1.3线程 优先 315
14.1.4线程 *命周期 315
14.1.5线程 Run loop 316
14.2使用Thread 316
14.2.1创建Thread下载图 317
14.2.2给Thread加锁使线程同步 319
14.3Op*ion技* 使用 322
14.4Grand Central Disp*ch 使用 325
14.4.1使用GCD查询IP地址
*息 326
14.4.2Disp*chGroup调度组
使用 328
14.5小结 329
15章 MapKit地图 330
15.1Map Kit 概念 331
15.1.1MKMapView 显示区域 331
15.1.2MKMapView 跟踪
位 332
15.1.3MKMapView 交互选项
装饰 333
15.1.4创建一 MKMapView
地图 333
15.1.5MKMapView 理 使用 335
15.1.6自 义annot*ionView
calloutView 337
15.1.7Ca*相 使用 341
15.2小结 342
16章 iOS 图*混排技* 343
16.1Core Text 使用 344
16.1.1*字排版 面 一些基本
概念 344
16.1.2列出设备 所有字 346
16.1.3富*本 创建 347
16.1.4图*混排 实现 350
16.2Text Kit 使用 354
16.2.1使用Text Kit对*字进行
分栏 354
16.2.2使用Text Kit 作图*混排
效果 357
16.3小结 359
17章 iOS 图像 频 理技*360
17.1Core I*ge概述 361
17.1.1使用Core I*ge 三 类
作 调效果 362
17.1.2使用Core I*ge给图 添加
马赛克 363
17.1.3使用Core I*ge 理 频
面 364
17.1.4输出Core I*ge 所有
滤镜 369
17.1.5使用CIDete*or CIFe*ure
进行人脸检测 370
17.2UIBlurEffe* CGBlendMode 372
17.2.1使用UIBlurEffe*实现*玻璃
效果 372
17.2.2使用CGBlendMode实现颜
混合效果 373
17.3小结 376
18章 iOS常用设备 使用 377
18.1Photos Ca* 使用 378
18.1.1读取Photos 图 378
18.1.2调用相 拍 照 382
18.2 位设备 使用 384
18.2.1使用 位设备获取设备地理
位置 385
18.2.2将地理坐标转换为实际
地名 388
18.3陀螺仪 加速 设备 使用 390
18.3.1陀螺仪 原理 应用 390
18.3.2加速 原理 应用 390
18.3.3检测iOS设备 晃动 391
18.4小结 393
19章 Storyboard 事板 使用 394
19.1Storyboard概述 395
19.1.1Storyboard 优缺 395
19.1.2 事板 组织形式 396
19.1.3创建一 Storyboard 397
19.1.4更改 事板 初 图
控 398
19.2在Storyboard 使用标 控 400
19.2.1添加三 控 400
19.2.2对控 进行 接 402
19.3在Storyboard 使用表格控 405
19.3.1在 事板 添加Table View 405
19.3.2添加Table View Cell 405
19.3.3设置Table View 数据源 407
19.3.4修改ViewControll.swift
* 408
19.4在Storyboard 使用 合控 409
19.4.1添加Colle*ion View 409
19.4.2设置Colle*ion View Cell 409
19.4.3设置Colle*ion View 数据源
理 411
19.4.4修改ViewControll.swift
* 412
19.5Storyboard常见 层次结构 413
19.6Storyboard之间 页面跳转 参数
传递 417
19.6.1 Storyboard 页面间
参数传递 417
19.6.2多 Storyboard 页面跳转
及参数传递 420
19.7使用 束功能适配多分辨率 424
19.7.1打开并运行示例项目 424
19.7.2给父 图MainView添加
束 426
19.7.3给三 分隔线添加 束 428
19.7.4给 小箭头添加 束 429
19.7.5给添加新会员按钮添加
束 431
19.7.6给 数据图标添加 束 432
19.8小结 433
20章 界面测试 自动化测试434
20.1 元测试概述 435
20.1.1Xocde XCTest框架 435
20.1.2对其他类 法进行 元
测试 438
20.1.3使用XCTest框架进行*能
测试 441
20.2UI Testing界面测试 442
20.2.1往项目 *入UI Testing 443
20.2.2 作UI测试 程序 444
20.2.3录 UI Testing步骤 446
20.2.4播放UI Testing 录
步骤 446
20.3使用UIAuto*tion进行自动化
测试 447
20.3.1使用UIAuto*tion录
自动化测试 码 447
20.3.2测试 本 保存 加载 449
20.4小结 449
21章 iOS应用程序内存泄* 检测451
21.1Alloc*ions工具 使用 452
21.2Leaks工具 使用 458
21.3小结 461
22章 iOS应用程序 本地化 462
22.1应用程序 本地化 463
22.1.1应用程序名称 本地化 463
22.1.2应用程序*字内容 本
地化 468
22.1.3Storyboard 本地化 471
22.1.4图 素材 本地化 474
22.2小结 477
23章 加密与安 478
23.1加密与安 479
23.1.1对称加密 非对称加密 479
23.1.23DES加密 480
23.1.3SHA1加密 485
23.1.4MD5加密 487
23.1.5越狱 况 判断 490
23.2小结 492
24章 开源框架CocoaPods493
24.1CocoaPods、SPM Carthage简介 494
24.1.1为什么使用CocoaPods 494
24.1.2CocoaPods 安装及淘
镜像使用 495
24.1.3Podspec 镜像使用 496
24.1.4CocoaPods 实践 497
24.1.5pod insll pod upd*e
使用 497
24.1.6CocoaPods 卸载 498
24.2CocoaPods-app 使用 498
24.2.1为新项目加入CocoaPods 499
24.2.2对Podfile pod insll pod upd*e 500
24.2.3删 工程 CocoaPods 501
24.2.4安装命 行 502
24.3小结 502
25章 Git版本控 及GitHub社会化
编程实践 503
25.1Git 奏 504
25.1.1什么是版本控 504
25.1.2版本控 简 504
25.1.3Git原理 506
25.1.4Git 安装、配置、别名
助 508
25.2Git基础 510
25.2.1创建本地仓库 关 远程
仓库 510
25.2.2* 在工作区、暂存区
Git本地仓库 作 513
25.2.3查看提交历 515
25.2.4撤 作 515
25.2.5标 516
25.3小结 519
26章 项目案例 架构搭建 520
26.1多人协作 工作流程 521
26.2技*选型 522
26.3MVC及工程结构 523
26.4UITabbarControll、UINavig*ionControll Assets.xcassets 搭建 525
26.4.1UITabbarControll UINavig*ionControll 525
26.4.2Assets.xcassets 理 527
26.5小结 529
27章 Model层相关框架 530
27.1XML、Plist、JSON数据格式 531
27.2开启ATS 532
27.3AlamofireOb*e*Mapp 533
27.3.1AlamofireOb*e*Mapp
安装 533
27.3.2AlamofireOb*e*Mapp
使用 533
27.4Ob*e*Mapp 535
27.4.1Ob*e*Mapp 安装 535
27.4.2Ob*e*Mapp Model与
JSON 转换 536
27.5Moya 536
27.5.1Moya 安装 537
27.5.2Moya 使用 537
27.6小结 540
28章 与众 姻 541
28.1ShareSDK 合登录 542
28.1.1获取AppKey 542
28.1.2下载SDK 542
28.1.3快速 成 542
28.1.4新建Head File并建立
桥接 543
28.1.5打开桥接* (Bridging-Head.h) 544
28.1.6添加URL Types 546
28.1.7查看open..应用
审核进度 546
28.2ShareSDK分享 548
28.2.1增加 分享支持 548
28.2.2增加微* 分享支持 548
28.2.3 微* 分享 码
实现 549
28.3聚合数据 LeanCloud 550
28.3.1聚合数据 550
28.3.2LeanCloud 551
28.4TalkingD*a 551
28.5小结 554
29章 开发SwiftNews新闻 户端
App 555
29.1SwiftNews App概述 556
29.1.1修改App Name 556
29.1.2修改App ICON 557
29.1.3欢迎页面 558
29.1.4启动页面 559
29.1.5Debug模式下 print 561
29.1.6桥 SVProgressHUD 562
29.1.7自 义Cell 563
29.1.8 国际新闻模块 564
29.1.9图 加圆角 助 类 567
29.2小结 569
30章 应用程序 打 发布570
30.1iOS应用商店概述 571
30.1.1App Store 重 更新 571
30.1.2在iTunes Conne*创建一
App 573
30.1.3打 App为IPA* 576
30.1.4自动化打 App 577
30.1.5上传App至App Store 580
30.1.6配置构建版本并提交审核 580
30.2小结 582
作者介绍
*摘
序言