欢迎来到中国铁道出版社有限公司官网!
$itImage.title$
$itImage.title$
$itImage.title$
$itImage.title$

Swift细致入门与最佳实践

书      号:9787113216757

丛  书 名:

作      者:陈强

译      者:

开      本:16开

装      帧:平装

正文语种:中文

出  版 社:中国铁道出版社

定      价:79

  • 内容简介

    本书基于稳定版本的Swift 2.0进行讲解,详细介绍了开发Swift应用程序的知识点。本书共分25章,循序渐进地讲解了Swift语言的基本语法知识,并剖析了基于Swift开发iOS应用程序的方法。本书内容全面,几乎涵盖了Swift开发的所有内容。全书内容言简意赅,讲解方法通俗易懂、详细,特别适合于初学者学习并消化。
  • 前言

    Swift是苹果公司在WWDC2014大会上所发布的一门全新的编程语言,用来编写OS X和iOS应用程序。苹果公司在设计Swift语言时,就有意将其与Objective-C共存,Objective-C是苹果操作系统在导入Swift前使用的编程语言。随着苹果公司开发团队的不断努力,Swift的版本也不断更新,并且日趋稳定。为了帮助读者迅速掌握Swift开发的核心技术知识,本书基于稳定版本的Swift 2.0进行讲解,详细介绍了Swift应用程序开发的知识点。
    Swift的优势
    (1)易学
    作为一项苹果独立发布的支持型开发语言,Swift语言的语法内容混合了Objective-C、JS和Python,其语法简单、使用方便、易学,大大降低了开发者进入的门槛。同时Swift语言可以与Objective-C混合使用,对于用惯了高难度Objective C语言的开发者来说,Swift语言更加易学。
    (2)功能强大
    Swift允许开发者通过更简洁的代码来实现更多的内容。在WWDC2014发布会上,工作人员演示了如何只通过一行简单的代码,完成一个完整图片列表加载的过程。另外,Swift还可以让开发人员一边编写程序,一边预览应用程序,从而快速测试应用在某些特殊情况下的反应。
    (3)提升性能
    Swift语言可以提升程序性能,并同时降低开发难度,没有开发者不喜欢这样的编程语言。
    (4)简洁、精良、高效
    Swift是一种非常简洁的语言。与Python类似,不必编写大量代码即可实现强大的功能,并且有利于提高应用开发速度。Swift可以更快捷有效地编译出高质量的应用程序。
    (5)执行速度快
    Swift的执行速度比Objective-C应用更快,这样会在游戏中看见更引人入胜的画面(需要苹果新的Metal界面的帮助),而其他应用也会有更好的响应性。与此同时,消费者不用购买新手机即可体验到这些效果。
    (6)全面融合
    苹果对全新的Swift语言的代码进行了大量简化,在更快、更安全、更好的交互、更现代的同时,开发者们可以在同一款软件中同时使用Objective-C、Swift、C三种语言,实现了三类开发人员的完美融合。
    (7)测试工作更加便捷
    方便快捷地测试所编写应用将帮助开发者更快地开发出复杂应用。以往对规模较大的应用来说,编译和测试过程极为冗繁,Swift在这一方面带来较大的改进,应用开发者可以更快地发布经过彻底测试的应用。

    本书特色
    (1)内容讲解循序渐进
    本书从基础语法和搭建开发环境讲起,循序渐进地讲解了Swift语言开发的基本语法知识和核心应用技术。适合初学者学习。
    (2)结构合理
    从用户的实际需要出发,科学安排知识结构,内容由浅入深,叙述清楚。全书详细地讲解了和Swift开发有关的知识点。
    (3)易学易懂
    本书条理清晰、语言简洁,可帮助读者快速掌握每个知识点。使读者既可以按照本书编排的章节顺序进行学习,也可以根据自己的需求对某一章节进行针对性的学习。
    (4)实用性强
    本书彻底摒弃枯燥的理论和简单的操作,注重实用性和可操作性,通过实例的实现过程,详细讲解了各个知识点的基本知识。
    (5)内容全面
    本书可以号称市面中“内容最全面的一本Swift书”,无论是搭建开发环境,还是基本语法、面向对象、函数方法,在本书中您都能找到解决问题的答案。
    本书参考内容
    任何一门全新编程语言的推出,大家最初的学习资料往往是其官方资料。当苹果公司在WWDC2014大会发布Swift语言后,也一起公布了其参考使用文档《Swift Programming Language》,官方不但提供了此学习文档的PDF文件,而且提供了在线阅读版本。和广大初学者一样,笔者也将此使用文档作为学习Swift的第一手资料。
    读者对象
    iOS开发初学者
    Swift初学者
    大、中专院校的师生
    毕业设计的学生
    iOS编程爱好者
    相关培训机构的师生
    从事iOS开发的程序员

    本书在编写过程中得到了中国铁道出版社编辑的大力支持。正是各位编辑的求实、耐心和效率,才能使得本书得以出版。另外也十分感谢我的家人,在我写作的时候给予的巨大支持。另外,由于编者知识水平有限,书中如有纰漏和不尽如人意之处在所难免,诚请广大读者提出意见或建议,以便修订并使之更臻完善。
  • 目录

    第1章 Swift语言基础
    1.1 Swift概述 1
    1.1.1 Swift的创造者 1
    1.1.2 Swift的优势 2
    1.2 搭建开发环境 3
    1.2.1 Xcode 介绍 3
    1.2.2 下载并安装Xcode 7 4
    1.3 使用Xcode开发环境 7
    1.3.1 改变公司名称 7
    1.3.2 通过搜索框缩小文件范围 8
    1.3.3 格式化代码 8
    1.3.4 代码缩进和自动完成 9
    1.3.5 文件内查找和替代 10
    1.3.6 快速定位到代码行 13
    1.3.7 快速打开文件 13
    1.3.8 使用书签 14
    1.3.9 自定义导航条 15
    1.3.10 使用Xcode帮助 16
    1.3.11 调试代码 17
    1.4 创建一个iOS 9项目 18
    1.5 打开一个现有的iOS 9项目 23
    1.6 第一段Swift程序 24
    实例1-1 使用Xcode 7开发第一个
    Swift程序 24
    第2章 Swift的基础语法
    2.1 分号 31
    2.2 空白 32
    2.3 标识符和关键字 32
    2.3.1 标识符 32
    2.3.2 关键字 33
    2.4 常量和变量 34
    2.4.1 声明常量 34
    实例2-1 输出常量的值 35
    2.4.2 声明变量 35
    实例2-2 输出变量的值 37
    2.4.3 输出常量和变量 39
    实例2-3 计算一个圆的面积 39
    2.4.4 标注类型 40
    实例2-4 省略类型声明 40
    2.4.5 常量和变量的命名规则 41
    实例2-5 修改变量值 41
    2.5 注释 42
    2.5.1 注释的规则 42
    实例2-6 演示注释的用法 43
    2.5.2 使用注释的注意事项 43
    2.6 数据类型 44
    2.6.1 数据类型的分类 45
    2.6.2 类型安全和类型推断 45
    2.6.3 类型注解 46
    2.6.4 类型标识符 46
    2.6.5 元组类型 47
    2.6.6 函数类型 47
    2.6.7 数组类型 48
    2.6.8 可选类型 48
    2.6.9 隐式解析可选类型 49
    2.6.10 协议合成类型 50
    2.6.11 元类型 50
    2.6.12 类型继承子句 50
    2.6.13 类型推断 51
    2.7 最基本的数值类型 51
    2.7.1 整数 52
    实例2-7 输出整数 53
    2.7.2 浮点数 54
    实例2-8 使用浮点数 54
    2.8 字面量 55
    2.8.1 数值型字面量 55
    实例2-9 使用数值型字面量 56
    2.8.2 整型字面量 56
    实例2-10 输出不同进制的17 57
    2.8.3 浮点型字面量 57
    2.8.4 文本型字面量 58
    实例2-11 演示特殊符号的使用 59
    2.8.5 数值的可读性 59
    2.9 数值型类型转换 60
    2.9.1 整数转换 60
    2.9.2 整数和浮点数转换 60
    实例2-12 演示整数和浮点数转换 61
    2.9.3 进制的转换 61
    2.10 类型别名 62
    实例2-13 演示类型别名的用法 63
    2.11 布尔值 63
    2.12 元组 65
    2.12.1 定义元组类型 65
    2.12.2 获取元组中的元素值 66
    实例2-14 演示元组的用法 66
    2.13 可选类型 67
    2.13.1 if 语句以及强制解析 68
    实例2-15 演示if 语句的
    强制解析 68
    2.13.2 可选绑定 68
    实例2-16 使用可选绑定重写
    实例2-15 69
    2.13.3 nil空值 69
    2.13.4 隐式解析可选类型 70
    2.14 断言 71
    2.14.1 使用断言进行调试 71
    2.14.2 何时使用断言 72
    2.15 综合演练 72
    实例2-17 综合演示Swift各个
    基本语法的用法 72
    第3章 字符、字符串和运算符
    3.1 字符和字符串 74
    3.1.1 字符和字符串基础 74
    3.1.2 字符串字面量
    (String Literals) 75
    实例3-1 演示各种特殊字符的
    使用过程 75
    3.1.3 初始化空字符串 76
    实例3-2 初始化空字符串
    实例演示 76
    3.1.4 字符串可变性 76
    实例3-3 使用换行符、双引号和
    单引号 77
    3.1.5 字符串是值类型 77
    3.1.6 字符串遍历 78
    实例3-4 遍历字符串实例演示 78
    3.1.7 计算字符数量 79
    实例3-5 设置字符值 79
    3.1.8 连接字符串和字符 80
    实例3-6 连接字符串和字符
    实例演示 80
    3.1.9 字符串插值 81
    3.1.10 比较字符串 81
    实例3-7 验证字符串是否相等 82
    实例3-8 实现字符串的大小
    写转换 83
    3.2 运算符概述 84
    3.3 赋值运算符 85
    3.3.1 基本赋值运算符 85
    实例3-9 使用基本的赋值运算符 86
    3.3.2 复合赋值 86
    实例3-10 使用复合赋值运算符 87
    3.4 算数运算符 87
    3.4.1 单目运算符 88
    实例3-11 使用单目运算符 89
    3.4.2 双目运算符 89
    实例3-12 使用双目运算符 90
    3.4.3 求余运算 90
    实例3-13 使用求余运算符 91
    3.4.4 浮点数求余计算 91
    实例3-14 使用浮点数求余运算符 92
    3.5 比较运算符(关系运算符) 92
    实例3-15 使用比较运算符 93
    3.6 三元条件运算 93
    实例3-16 使用三元条件运算符 94
    3.7 区间运算符 94
    3.7.1 闭区间运算符 95
    实例3-17 使用闭区间运算符 95
    3.7.2 半闭区间运算符 95
    实例3-18 使用半闭区间运算符 95
    3.8 逻辑运算 96
    3.8.1 逻辑非 96
    3.8.2 逻辑与 97
    3.8.3 逻辑或 97
    3.8.4 组合逻辑 97
    3.8.5 使用括号设置运算优先级 98
    实例3-19 使用括号设置运算
    优先级 98
    3.9 位运算符 99
    3.9.1 按位取反运算符 99
    3.9.2 按位与运算符 100
    3.9.3 按位或运算符 101
    3.9.4 按位异或运算符 102
    3.9.5 按位左移/右移运算符 103
    实例3-20 使用左移/右移运算符 105
    3.10 溢出运算符 106
    实例3-21 使用溢出运算符 106
    3.11 运算符的优先级和结合性 109
    实例3-22 演示运算符的优先级
    和结合性 111
    第4章 集合类型
    4.1 数组 113
    4.1.1 定义数组 113
    实例4-1 定义一个数组 114
    4.1.2 数组构造语句 114
    4.1.3 访问和修改数组 115
    实例4-2 演示对数组的基本操作 117
    4.1.4 数组的遍历 118
    实例4-3 实现对数组的遍历 119
    4.1.5 创建并构造一个数组 119
    实例4-4 演示创建并且
    构造一个数组 120
    4.2 字典 122
    4.2.1 字典字面量 122
    实例4-5 创建一个字典 123
    4.2.2 读取和修改字典 124
    实例4-6 演示读取并修改字典 124
    实例4-7 对字典数据进行操作 125
    实例4-8 添加或修改字典数据 126
    实例4-9 在字典中移除键值对 127
    4.2.3 字典遍历 128
    实例4-10 在字典中遍历数据 128
    4.2.4 创建一个空字典 129
    实例4-11 实现字典复制操作 130
    4.2.5 字典类型的散列值 130
    4.3 集合的可变性 131
    4.4 综合演练 131
    实例4-12 综合演练字典的操作 131
    第5章 语句和流程控制
    5.1 Swift语句概述 133
    5.1.1 循环语句 134
    实例5-1 简单演示使用for语句
    遍历数组 134
    实例5-2 简单演示使用
    while语句 136
    实例5-3 演示while和for
    的对比 136
    5.1.2 分支条件语句 138
    实例5-4 简单演示使用
    if分支语句 138
    实例5-5 简单演示使用
    switch分支语句 140
    5.1.3 带标签的语句 141
    5.1.4 控制传递语句 142
    5.2 for 循环 143
    5.2.1 for-in 143
    实例5-6 for in语句应用:打印10
    以内偶数 144
    5.2.2 for条件递增 145
    实例5-7 使用for条件递增语句 146
    5.3 while 循环 147
    5.3.1 While语句 147
    实例5-8 while循环语句应用:
    100以内10的倍数 149
    5.3.2 do-while语句 149
    实例5-9 do-while循环语句应用:
    蛇和梯子小游戏 150
    5.4 条件语句 151
    5.4.1 if语句 151
    实例5-10 if语句应用:
    判断温度 151
    5.4.2 switch语句 152
    实例5-11 switch语句应用:匹配
    名为SomeCharacter的
    小写字符 153
    5.5 控制转移语句 155
    5.5.1 continue语句 155
    5.5.2 break语句 155
    实例5-12 简单演示使用break
    语句 157
    5.5.3 贯穿(fallthrough) 157
    5.5.4 带标签的语句(labeled statements) 158
    第6章 函数
    6.1 函数的定义 161
    6.1.1 定义无参函数 162
    6.1.2 定义有参函数 162
    6.2 函数声明 164
    6.2.1 函数声明的格式 164
    实例6-1 声明一个函数 165
    6.2.2 声明中的参数名 165
    实例6-2 用“...”获取不固定
    个数参数 166
    6.2.3 声明中的特殊类型参数 167
    6.3 函数调用 167
    6.3.1 调用函数的格式 167
    实例6-3 调用定义的函数 168
    6.3.2 函数调用的方式 169
    实例6-4 通过函数比较
    两个数的大小 169
    6.4 函数参数 170
    6.4.1 多重输入参数 170
    实例6-5 演示多重输入
    参数的用法 171
    6.4.2 无参函数(Functions Without Parameters) 171
    6.4.3 无返回值函数 171
    6.5 返回值 172
    实例6-6 演示函数的返回值
    的用法 173
    6.6 函数参数的名称 174
    6.6.1 外部参数名 174
    6.6.2 简写外部参数名 175
    6.6.3 默认参数值 175
    6.6.4 默认值参数的外部参数名 176
    6.6.5 可变参数 177
    6.6.6 常量参数和变量参数 178
    6.6.7 输入/输出参数 179
    实例6-7 编写函数求平均值 180
    6.6.8 扩展参数 180
    6.7 函数类型 181
    6.7.1 使用函数类型 182
    6.7.2 函数类型作为参数类型 182
    实例6-8 演示在函数中使用另一个
    函数作为参数 183
    6.7.3 函数类型作为返回类型 183
    实例6-9 演示将函数类型作为
    返回类型 184
    6.8 嵌套函数 185
    实例6-10 演示嵌套函数的用法 186
    6.9 函数和闭包 186
    实例6-11 重写一个闭包来对所有
    奇数返回0 187
    实例6-12 在函数中定义函数 187
    6.10 内置库函数 189
    实例6-13 查询“.”的位置 191
    第7章 类
    7.1 类和结构体基础 193
    7.1.1 定义类和结构体 195
    7.1.2 声明结构体字段 196
    实例7-1 演示结构体的用法 196
    7.2 类的成员 197
    7.2.1 最简单的数据成员 198
    7.2.2 最重要的函数成员 198
    7.3 结构体成员 199
    7.3.1 字段 199
    实例7-2 创建结构体变量
    赋初始值 199
    7.3.2 函数 200
    实例7-3 在结构体中直接
    存储方法 200
    7.3.3 属性 201
    实例7-4 演示结构体属性的用法 201
    7.4 类和结构体实例 201
    实例7-5 定义并使用类的实例 202
    7.5 类的继承 202
    7.5.1 类的层次结构 202
    7.5.2 继承概述 203
    7.5.3 定义子类 203
    实例7-6 创建StudentLow的子类
    StudentHight 205
    7.5.4 重写 206
    实例7-7 演示面向对象、继承、重写
    和构造 209
    7.5.5 继承规则 210
    7.6 属性访问 210
    实例7-8 演示类中的属性、常量
    和变量 210
    第8章 构造函数和析构函数
    8.1 构造函数概述 212
    8.1.1 结构体中的构造函数 213
    实例8-1 使用有参数构造函数 213
    实例8-2 演示使用加了“_”标记的
    参数构造函数 214
    8.1.2 类中的构造函数 215
    实例8-3 演示类中的构造函数 215
    8.2 构造过程详解 217
    8.2.1 为存储型属性赋初始值 218
    实例8-4 演示为存储型属性赋
    初始值 219
    8.2.2 定制化构造过程 219
    8.2.3 默认构造器 221
    8.2.4 值类型的构造器代理 222
    8.2.5 类的继承和构造过程 224
    8.2.6 可失败构造器 231
    8.3 析构函数 233
    8.3.1 析构过程原理 233
    实例8-5 在Swift中使用析构
    函数 233
    8.3.2 析构函数操作 234
    8.4 综合演练 236
    实例8-6 声明并调用Swift中各种
    常用的函数 236
    第9章 泛型
    9.1 泛型所解决的问题 243
    实例9-1 定义泛型 244
    9.2 泛型函数 245
    9.3 类型参数 246
    实例9-2 使用函数和类支持泛型 246
    9.4 命名类型参数和泛型类型 249
    9.5 扩展一个泛型 252
    9.6 类型约束 252
    9.6.1 类型约束语法 253
    9.6.2 类型约束行为 253
    9.7 关联类型 255
    9.7.1 关联类型行为 255
    9.7.2 扩展一个存在的类型为一指定关联类型 257
    9.8 Where 语句 257
    第10章 协议和扩展
    10.1 协议的语法 259
    实例10-1 定义并使用协议 260
    10.2 对属性的规定 261
    10.3 对方法的规定 263
    10.4 对突变方法的规定 263
    10.5 协议类型 264
    10.6 委托(代理)模式 266
    10.7 在扩展中添加协议成员 268
    10.8 通过扩展补充协议声明 269
    10.9 集合中的协议类型 269
    10.10 协议的继承 269
    10.11 协议合成 270
    10.12 检验协议的一致性 271
    10.13 对可选协议的规定 272
    10.14 扩展详解 274
    10.14.1 扩展语法 274
    10.14.2 计算型属性 275
    实例10-2 演示计算型属性
    的用法 275
    10.14.3 构造器 276
    实例10-3 演示构造器的用法 277
    10.14.4 扩展方法 278
    实例10-4 演示扩展方法的用法 278
    10.14.5 下标 279
    实例10-5 演示下标的用法 279
    10.14.6 嵌套类型 280
    10.14.7 扩展字符串的用法 281
    实例10-6 演示扩展字符串
    的用法 281
    第11章 Swift和Objective-C混编开发
    11.1 在同一个工程中使用Swift和Objective-C 282
    11.1.1 Mix and Match概述 282
    11.1.2 在同一个应用的target
    中导入 283
    11.1.3 在同一个Framework的
    target中导入 284
    11.1.4 导入外部 Framework 285
    11.1.5 在Objective-C中使用
    Swift 285
    11.1.6 实践练习 286
    实例11-1 在Objective-C中
    调用Swift 286
    11.2 Swift调用C语言函数 288
    11.2.1 调用简单的C语言函数 288
    实例11-2 在Swift中调用简单的
    C语言函数 288
    11.2.2 增加一个C语言键盘输入
    函数 292
    实例11-3 演示增加C语言键盘
    输入函数 292
    11.3 Swift调用C语言函数的综合演练 293
    实例11-4 综合演练调用C语言中的
    各种函数 293
    第12章 Xcode Interface Builder界面开发
    12.1 Interface Builder基础 297
    12.1.1 Interface Builder的作用 297
    12.1.2 Interface Builder的新特色 298
    12.2 Interface Builder采用的方法 300
    12.3 Interface Builder的故事板 300
    12.3.1 推出的背景 300
    12.3.2 故事板的文档大纲 301
    12.3.3 文档大纲的区域对象 303
    12.4 创建一个界面 303
    12.4.1 对象库 304
    12.4.2 将对象加入视图中 305
    12.4.3 使用IB布局工具 305
    12.5 定制界面外观 308
    12.5.1 使用属性检查器 309
    12.5.2 设置辅助功能属性 309
    12.5.3 测试界面 310
    第13章 使用Xcode编写MVC程序
    13.1 MVC模式基础 312
    13.1.1 诞生背景 312
    13.1.2 分析结构 313
    13.1.3 MVC的特点 313

    13.1.4 使用MVC实现程序设计
    的结构化 314
    13.2 Xcode中的MVC 314
    13.2.1 原理 314
    13.2.2 模板就是给予MVC的 315
    13.3 在Xcode中实现MVC 316
    13.3.1 视图 316
    13.3.2 视图控制器 316
    13.4 数据模型 318
    13.5 综合演练 319
    实例13-1 使用UISwitch控件控制
    是否显示密码明文 319
    第14章 基本组件
    14.1 文本框(UITextField) 324
    14.1.1 文本框基础 324
    14.1.2 实践练习 325
    实例14-1 为TextField添加
    震动效果 325
    14.2 文本视图(UITextView) 326
    14.2.1 文本视图基础 326
    14.2.2 实践练习 327
    实例14-2 显示UITextView
    中的文本 327
    14.3 标签(UILabel) 329
    14.3.1 标签(UILabel)的属性 329
    14.3.2 实践练习 329
    实例14-3 使用UILabel控件输出
    一个指定样式的文本 329
    14.4 按钮(UIButton) 331
    14.4.1 按钮基础 331
    14.4.2 实践练习 332
    实例14-4 自定义一个按钮 332
    14.5 滑块控件(UISlider) 334
    实例14-5 使用UISlider控件 334
    14.6 步进控件(UIStepper) 337
    14.6.1 步进控件基础 337
    14.6.2 实践练习 338

    实例14-6 使用步进控件自动
    增减数字 338
    14.7 图像视图控件(UIImageView) 339
    14.7.1 UIImageView的常用操作 340
    14.7.2 实践练习 343
    实例14-7 使用UIImageView
    控件 344
    14.8 开关控件(UISwitch) 346
    14.8.1 开关控件基础 346
    14.8.2 实践练习 346
    实例14-8 使用UISwitch控件控制
    是否显示密码明文 346
    14.9 分段控件(UISegmentedControl) 349
    14.9.1 分段控件基础 349
    14.9.2 实践练习 350
    实例14-9 自定义UISegmentedControl
    控件的样式 350
    第15章 提醒、操作表、工具栏和
    日期选择器
    15.1 提醒视图(UIAlertView) 351
    15.1.1 UIAlertView基础 351
    15.1.2 实践练习 352
    实例15-1 演示如何使用
    UIAlertView控件 352
    15.2 操作表(UIActionSheet) 353
    实例15-2 使用UIActionsheet实现
    一个分享App 353
    15.3 工具栏(UIToolbar) 356
    15.3.1 工具栏基础 356
    15.3.2 自定义工具栏 358
    实例15-3 使用UIToolbar控件制作
    自定义工具栏 358
    15.4 选择器视图(UIPickerView) 366
    15.4.1 选择器视图基础 366
    15.4.2 实践练习 367
    实例15-4 使用UIPickerView实现
    倒计时器 367

    15.5 日期选择(UIDatePicker) 376
    15.5.1 UIDatePicker基础 376
    15.5.2 实践练习 377
    实例15-5 演示如何使用
    UIDatePicker控件 377
    第16章 视图控制处理
    16.1 Web视图控件(UIWebView) 382
    16.1.1 Web视图基础 382
    16.1.2 实践练习 383
    实例16-1 加载指定的HTML网页并
    自动播放网页音乐 383
    16.2 可滚动视图控件(UIScrollView) 386
    16.2.1 UIScrollView的基本用法 386
    16.2.2 实践练习 388
    实例16-2 演示如何使用
    UIScrollView控件 388
    16.3 翻页控件(UIPageControl) 390
    16.3.1 PageControll控件基础 390
    16.3.2 实践练习 391
    实例16-3 使用UIPageControl控件
    设置四个界面 391
    16.4 表视图(UITable) 394
    16.4.1 表视图基础 394
    16.4.2 添加表视图 395
    16.4.3 UITableView详解 397
    16.4.4 实践练习 397
    实例16-4 在表视图中动态操作
    单元格 397
    第17章 活动指示器、进度条和检索条
    17.1 活动指示器
    (UIActivityIndicatorView) 403
    17.1.1 活动指示器基础 403
    17.1.2 实践练习 403
    实例17-1 演示如何使用UIActivityIndicatorView
    控件 404
    17.2 进度条(UIProgressView) 405
    17.2.1 进度条基础 405
    17.2.2 实践练习 406
    实例17-2 实现自定义进度条
    效果 406
    17.3 检索条(UISearchBar) 412
    17.3.1 检索条基础 412
    17.3.2 实践练习 413
    实例17-3 演示如何使用UISearchBar
    控件 413
    第18章 UIView和视图控制器
    18.1 UIView基础 416
    18.1.1 UIView的结构 417
    18.1.2 视图架构 418
    18.1.3 视图层次和子视图管理 419
    18.1.4 视图绘制周期 420
    18.1.5 实践练习 420
    实例18-1 在UIView中创建一个
    滚动图片浏览器 420
    18.2 导航控制器(UIViewController)
    简介 427
    18.2.1 UIViewController基础 427
    18.2.2 实践练习 428
    实例18-2 使用UIViewController控件
    创建会员登录系统 428
    18.3 使用UINavigationController 431
    18.3.1 导航栏、导航项和栏
    按钮项 433
    18.3.2 UINavigationController
    详解 433
    18.3.3 在故事板中使用导航
    控制器 434
    18.3.4 实践练习 437
    实例18-3 创建主从关系的“主-子”
    视图 437
    18.4 选项卡栏控制器 439
    18.4.1 选项卡栏和选项卡栏项 439
    18.4.2 在选项卡栏控制器管理的场景
    之间共享数据 441
    18.4.3 UITabBarController
    使用详解 441
    18.4.4 实践练习 443
    实例18-4 开发一个界面选择器 443
    第19章 图形、图像、图层和动画
    19.1 图形处理 446
    19.1.1 iOS的绘图机制 446
    19.1.2 实践练习 447
    实例19-1 使用Quartz 2D绘制移动的
    曲线 447
    19.2 图层 450
    19.2.1 视图和图层 451
    19.2.2 实践练习 451
    实例19-2 演示CALayers图层
    的用法 451
    19.3 实现动画 453
    19.3.1 UIImageView动画 453
    19.3.2 视图动画UIView 454
    19.3.3 Core Animation详解 454
    19.3.4 实践练习 455
    实例19-3 图形图像的人脸
    检测处理 455
    第20章 多媒体应用
    20.1 声音服务 461
    20.1.1 声音服务基础 462
    20.1.2 实践练习 462
    实例20-1 使用AudioToolbox播放
    列表中的音乐 462
    20.2 提醒和震动 474
    20.2.1 播放提醒音 474
    20.2.2 实践练习 474
    实例20-2 演示两种震动 474
    20.3 Media Player框架 476
    20.3.1 Media Player框架中的类 476
    20.3.2 实践练习 476
    实例20-3 播放指定的视频 476
    20.4 AV Foundation框架 479
    20.4.1 准备工作 480
    20.4.2 实践练习 480
    实例20-4 使用AVAudioPlayer播放
    和暂停指定的MP3 480
    20.5 图像选择器
    (UIImagePickerController) 482
    20.5.1 使用图像选择器 482
    20.5.2 实践练习 482
    实例20-5 实现ImagePicker
    功能 482
    第21章 定位处理
    21.1 Core Location框架 486
    21.1.1 Core Location基础 486
    21.1.2 实践练习 487
    实例21-1 定位显示当前的
    位置信息 487
    21.2 获取位置 493
    21.2.1 位置管理器委托 493
    21.2.2 处理定位错误 494
    21.2.3 位置精度和更新过滤器 494
    21.2.4 获取航向 494
    21.3 地图功能 495
    21.3.1 Map Kit基础 495
    21.3.2 为地图添加标注 496
    21.3.3 实践练习 496
    实例21-2 在地图中定位当前
    的位置信息 496
    第22章 和硬件之间的操作
    22.1 CoreMotion框架 500
    22.1.1 CoreMotion框架介绍 500
    22.1.2 加速计基础 501
    22.1.3 陀螺仪 502
    22.1.4 实践练习 502
    实例22-1 使用iPhone中的Motion
    传感器 502
    22.2 访问朝向和运动数据 505

    22.2.1 通过UIDevice请求
    朝向通知 505
    22.2.2 使用Core Motion读取加速计
    和陀螺仪数据 505
    22.2.3 实践练习 506
    实例22-2 传感器综合练习:海拔和距离测试器 506
    第23章 游戏开发
    23.1 Sprite Kit框架基础 518
    23.1.1 Sprite Kit的优点和缺点 518
    23.1.2 Sprite Kit、Cocos2D、Cocos2D-X和Unity
    的选择 519
    23.2 实践练习 519
    实例23-1 开发一个四子棋游戏 519
    第24章 WatchKit智能手表开发
    24.1 Apple Watch介绍 535
    24.2 WatchKit开发详解 537
    24.2.1 WatchKit架构 537
    24.2.2 WatchKit布局 540
    24.2.3 Glances和Notifications 540
    24.2.4 Watch App的生命周期 540
    24.3 开发Apple Watch应用程序 542
    24.3.1 创建Watch应用 542
    24.3.2 创建Glance界面 542
    24.3.3 自定义通知界面 543
    24.3.4 配置Xcode项目 543
    24.4 实践练习 546
    实例24-1 开发一个综合性智能手表
    管理系统 546
    24.4.1 系统介绍 547
    24.4.2 创建工程项目 547
    24.4.3 iPhone端的具体实现 549
    24.4.4 Watch端的具体实现 551
    第25章 企业客服即时通信系统
    (第三方框架+云存储)
    25.1 即时通信系统介绍 559
    25.2 系统模块结构 560
    25.3 创建工程 561
    25.4 使用CocoaPods配置第三方框架 562
    25.4.1 什么是CocoaPods 562
    25.4.2 CocoaPods的核心组件 562
    25.4.3 本项目的CocoaPods 562
    25.5 用户登录 563
    25.5.1 登录主界面 563
    25.5.2 新用户注册 568
    25.6 系统聊天 571
    25.7 UI界面优化 573
    25.7.1 文本框优化 573
    25.7.2 HUD优化 575
    25.8 使用第三方框架 576
    25.9 使用云存储保存系统数据 580
    25.10 执行效果 581

  • 作者介绍

    ※ 中国联通iPhone研发中心高级工程师
    ※ 4年以上iPhone和iPad开发和定制经验
    ※精通swift、Objective-C开发和UI设计
    ※ 51CTO客座iOS专家
    ※ 火狐移动端技术专家导师
    参与了iPhone WCDMA版的研发定制工作,对于iOS开发有着丰富的经验。
  • 编辑推荐

    Swift开发最细致的入门与提升图书,极具实践性的能力提升案头宝典。
    秉承理论学习与实践开发相结合的原则,力求实现所有技术点和经典案例的完美搭配。
  • 书评书荐

  • 附件下载

图书推荐