当前位置:首页 > 工业技术
SWIFT细致入门与最佳实践
SWIFT细致入门与最佳实践

SWIFT细致入门与最佳实践PDF电子书下载

工业技术

  • 电子书积分:17 积分如何计算积分?
  • 作 者:陈强编
  • 出 版 社:北京:中国铁道出版社
  • 出版年份:2016
  • ISBN:7113216757
  • 页数:582 页
图书介绍:Swift是苹果公司在WWDC 2014大会上所发布的一门全新的编程语言,用来编写OS X和iOS应用程序。随着苹果公司开发团队的不断努力,Swift的版本也不断更新,并且日趋稳定。本书基于稳定版本的Swift 2.0进行讲解,详细介绍了开发Swift应用程序的所有知识点。本书共分25章,循序渐进的讲解了Swift语言的基本语法知识,并剖析了基于Swift开发iOS应用程序的方法。本书内容全面,几乎涵盖了Swift开发的所有内容。全书内容言简意赅,讲解方法通俗易懂、详细,特别适合于初学者学习并消化。本书适合Swift初学者、iOS爱好者、iPhone开发人员、iPad开发人员、iOS开发人员学习,也可以作为相关培训学校和大、中专院校相关专业的教学用书。
《SWIFT细致入门与最佳实践》目录
标签:入门 实践

第1章 Swift语言基础 1

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的基础语法 31

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章 字符、字符串和运算符 74

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章 集合类型 113

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章 语句和流程控制 133

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章 函数 161

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.1 0内置库函数 189

实例6-13 查询“.”的位置 191

第7章 类 193

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章 构造函数和析构函数 212

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章 泛型 243

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章 协议和扩展 259

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混编开发 282

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界面开发 297

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程序 312

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章 基本组件 324

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章 提醒、操作表、工具栏和日期选择器 351

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章 视图控制处理 382

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章 活动指示器、进度条和检索条 403

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和视图控制器 416

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章 图形、图像、图层和动画 446

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章 多媒体应用 461

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章 定位处理 486

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章 和硬件之间的操作 500

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章 游戏开发 518

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智能手表开发 535

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 WatchApp的生命周期 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章 企业客服即时通信系统(第三方框架+云存储) 559

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

相关图书
作者其它书籍
返回顶部