Swift语言实战晋级
基本信息
作者: 老镇

丛书名: 爱上Swift
出版社:人民邮电出版社
ISBN:9787115378804
上架时间:2014-12-26
出版日期:2015 年1月
开本:16开
页码:448
版次:1-1

 

内容简介
    计算机书籍
Swift语言实战晋级》主要通过大量实例来讲解Swift语言在软件开发中的实际应用方法。本书共9章,前2章快速讲述Swift的基础内容,即开发环境的搭建和Swift的基础语法。由于本书是晋级篇,故不再大篇幅讲解基础内容。第3~6章以UIKit控件为主要内容,通过拖拖看小游戏、豆瓣电台、任务提醒软件几个案例来充分巩固UIKit从基础到高级的知识体系,其中还会涉及网络数据读取、图片缓存等技术。第7~9章我们共同聊一聊SpriteKit的应用,以围住神经猫、跑酷熊猫两个实例来讲述2D游戏的开发技术。本书适合对Swift语言的基础内容有一定了解的读者提升实战技能。
目录
《Swift语言实战晋级》

第1章 Swift开发环境的搭建 1

1.1 下载Xcode 1

1.2 关于Mac操作系统 3

第2章 Swift语法速读 4

2.1 基础知识 4

2.1.1 变量与常量 4

2.1.2 注释 5

2.1.3 整数 5

2.1.4 浮点数 5

2.1.5 类型推测 5

2.1.6 数值型类型转换 5

2.1.7 布尔值 6

2.1.8 元组 6

2.1.9 可选类型 7

2.1.10 断言 8

2.2 基本运算符 9

2.2.1 赋值运算符 9

2.2.2 数值运算 9

2.2.3 自增(自减)运算 9

2.2.4 复合赋值 9

2.2.5 比较运算 10

2.2.6 三元运算符号 10

2.2.7 区间 10

2.2.8 逻辑运算 10

2.2.9 括号优先级 11

2.3 字符串和字符 11

2.3.1 字符串 11

2.3.2 字符 11

2.4 集合类型 13

2.4.1 数组 13

2.4.2 字典 14

2.5 流程控制 16

2.5.1 for循环 16

2.5.2 while循环 17

2.5.3 条件语句 18

2.5.4 控制转移语句 21

2.6 函数 21

2.7 闭包 24

2.8 枚举 24

2.9 类和结构体 25

2.10 属性 26

2.11 方法 29

2.12 下标 30

2.13 继承 32

2.14 构造过程 34

2.15 析构过程 36

2.16 自动引用计数 36

2.17 可选链 37

2.18 类型转换 38

2.19 类型嵌套 40

2.20 扩展 41

2.21 协议 43

2.22 泛型 45

2.23 访问控制 45

2.24 高级运算符 46

第3章 基础UIKit控件概览 49

3.1 创建工程及基本操作 49

3.1.1 创建Single View Application工程 49

3.1.2 基本操作 51

3.2 Button(按钮) 57

3.2.1 Button控件的基本属性 57

3.2.2 Button实例:各类按钮 59

3.3 Label 60

3.3.1 Label控件的基本属性 61

3.3.2 Label实例:各类文本标签 62

3.4 TextField 63

3.4.1 文本框控件的属性 63

3.4.2 实例:登录界面 64

3.4.3 实例:加法计算器 66

3.5 TextView 68

3.5.1 多行文本框的属性 68

3.5.2 实例:自定义选择内容后的菜单 69

3.6 Switch 70

3.6.1 文本框控件的属性 70

3.6.2 Switch控制TextView的可编辑属性 71

3.7 SegmentedControl 72

3.7.1 Segmented Control的属性 72

3.7.2 Segmented Control实例 73

3.8 ImageView 75

3.8.1 图像控件的基本属性 75

3.8.2 图像控件实例 75

3.9 ProgressView 78

3.9.1 进度条控件的属性 78

3.9.2 进度条控件的实例 78

3.10 ActivityIndicator View 79

3.10.1 环形进度条的基本属性 80

3.10.2 环形进度条实例 80

3.11 Slider 82

3.11.1 拖动条的基本属性 82

3.11.2 实例:拖动条控制图片透明度 82

3.12 AlertView 84

3.12.1 警告框的基本属性 84

3.12.2 实例:各式各样的警告框 84

3.13 ActionSheet 88

3.13.1 底部警告框的基本属性 88

3.13.2 底部警告框的实例 88

3.14 DatePicker 89

3.14.1 日期选择器的基本属性 89

3.14.2 日期选择器的实例 90

3.15 PickerView 91

3.15.1 选择器的一些属性 91

3.15.2 选择器的实例 91

3.16 Stepper 96

3.16.1 步进器器的一些属性 96

3.16.2 实例:属性加点器 96

3.17 WebView 98

3.17.1 网页视图控件的一些属性 98

3.17.2 实例:迷你网页浏览器 99

3.18 Toolbar与Bar Button Item 100

3.18.1 工具条的一些属性 100

3.18.2 Bar Button Item的一些属性 101

3.18.3 工具条的实例 102

3.19 TableView 103

3.19.1 TableView的一些属性 103

3.19.2 TableView的一个简单例子 104

3.20 SearchBar 109

3.20.1 搜索条的简单属性 109

3.20.2 搜索条的简单例子 110

3.20.3 Search Bar and Search Display Controller例子 115

3.21 NavigationBar 117

3.21.1 导航条的实例 117

3.22 NavigationController 119

3.22.1 导航控制器的属性 119

3.22.2 导航控制器实例 119

3.23 TabBar 125

3.23.1 TabBar的一些属性 125

3.23.2 TabBarItem的一些属性 126

3.23.3 TabBar实例 127

3.24 TabBar Controller 127

3.24.1 TabBar Controller实例 127

3.25 Page View Control 129

3.25.1 Page View Controller属性 129

3.25.2 Page View Controller实例 129

第4章 拖拖看小游戏 133

4.1 构建主界面 133

4.2 基本变量和更新函数 137

4.3 获取滑块的数值并与目标值进行比较 138

4.4 重头开始玩游戏 142

4.5 新增得分规则界面实现跳转 143

4.6 自定义界面 146

第5章 豆瓣电台 154

5.1 动手之前先做一些准备 154

5.2 实现界面 158

5.3 设置TableView 162

5.4 异步获取网络数据 168

5.5 缓存缩略图 176

5.6 改变封面图 178

5.7 播放歌曲 178

5.8 选择歌曲频道 180

5.9 Cell的显示动画 184

5.10 播放时间与播放进度 186

5.11 简单的手势控制播放与暂停 188

5.12 最后的细节 199

第6章 任务提醒软件 201

6.1 软件预览 201

6.2 创建项目 202

6.3 设计Cell 207

6.4 动态展示Cell 209

6.5 简述MVC 211

6.6 Model初体验 211

6.7 导航控制器 214

6.8 界面跳转 219

6.9 处理新界面的一些细节 231

6.10 编辑任务类别 236

6.11 本地保存数据 242

6.12 加载本地数据 245

6.13 重新规划界面 251

6.14 任务类型的Model 258

6.15 动态设置任务列表界面的Title 262

6.16 增加和编辑任务类型 263

6.17 任务类型的本地化保存 269

6.18 数据保护措施 280

6.19 重构Model 282

6.20 数据本地化NSUserDefaults 290

6.21 计算还有多少个需要提醒的任务 295

6.22 任务类型列表排序 297

6.23 添加任务类型的图标 298

6.24 对应用做一些美化 308

6.25 任务截止时间 310

6.26 添加日期选择器 316

6.27 本地消息通知 327

第7章 SpriteKit 简介 335

7.1 简单聊一聊 335

7.1.1 聊一聊SKNode 336

7.1.2 聊一聊SKScene 336

7.1.3 聊一聊纹理 336

7.1.4 聊一聊动作(Action) 336

7.1.5 聊一聊物理系统 336

7.2 如何学习SpriteKit 337

7.2.1 创建SpriteKit项目 337

7.2.2 创建第一个场景 339

7.2.3 往场景中添加内容 342

7.2.4 让文本动起来 343

7.2.5 场景的转换 343

7.2.6 使用SKSpriteNode 344

7.2.7 添加灯光 345

7.2.8 物理系统 346

第8章 游戏实战-围住神经猫 349

8.1 游戏预览 349

8.2 创建游戏项目 351

8.3 创建背景 353

8.4 创建圆点类 353

8.5 在场景中生成圆点 356

8.6 神经猫的类 364

8.7 寻路 366

8.8 留个小作业 379

第9章 游戏实战-跑酷熊猫 380

9.1 创建游戏工程以及导入素材 381

9.2 创建熊猫类 384

9.3 显示一个动态的熊猫 387

9.4 熊猫的跳和打滚 389

9.5 踩踏平台是怎么炼成的 391

9.6 创建平台类以及平台工厂类 393

9.7 平台的移动 397

9.8 产生源源不断的移动平台 397

9.9 移除场景之外的平台 400

9.10 视差滚动背景 401

9.11 欢迎进入物理世界 408

9.12 与平台的碰撞 411

9.13 二段跳的实现 412

9.14 熊猫的打滚动作 413

9.15 起跳特效 415

9.16 苹果以及苹果工厂类 420

9.17 计分板 425

9.18 下沉和升降的平台 427

9.19 加速度 433

9.20 重置游戏 434

9.21 声音类 436

9.22 修复小bug 446

后记 448

Swift语言实战晋级的更多相关文章

  1. swift语言实战晋级-第9章 游戏实战-跑酷熊猫-9-10 移除平台与视差滚动

    9.9 移除场景之外的平台 用为平台是源源不断的产生的,如果不注意销毁,平台就将越积越多,虽然在游戏场景中看不到.几十个还看不出问题,那几万个呢?几百万个呢? 所以我们来看看怎么移除平台,那什么样的平 ...

  2. swift语言实战晋级-第9章 游戏实战-跑酷熊猫-7-8 移动平台的算法

    在上个小节,我们完成了平台的产生.那么我们来实现一下让平台移动.平台的移动,我们只需要在平台工厂类中写好移动的方法,然后在GameScene类中统一控制就行了. 在GameScene类中,有个upda ...

  3. Swift语言实战晋级-第9章 游戏实战-跑酷熊猫-5-6 踩踏平台是怎么炼成的

    在游戏中,有很多分来飞去的平台,这个平台长短不一.如果每种长度都去创建一张图片那是比较繁琐的事情.实际上,我们只用到3张图.分别是平台的,平台的中间部分,平台的右边.关键是平台的中间部分,两张中间部分 ...

  4. Swift语言实战晋级-第9章 游戏实战-跑酷熊猫-4 熊猫的跳和打滚

    之前我们学会了跑的动作,现在我们可以利用同样的方法来实现了跳和打滚的动画. …… class Panda : SKSpriteNode { …… //跳的纹理集合 let jumpAtlas = SK ...

  5. Swift语言实战晋级-第9章 游戏实战-跑酷熊猫-3 显示一个动态的熊猫

    一个静态的熊猫明显不能满足我们的欲望,接下来我们就让熊猫跑起来.序列帧动画的原理就是不停的切换不同的图片.当我们将一张一张的切换Panda类的跑动文理后,熊猫就跑起来了.那么首先我们需要一个数组常量来 ...

  6. Swift语言实战晋级-第9章 游戏实战-跑酷熊猫-2 创建熊猫类

    当我们创建好项目文件后我们就可以开始一步一步的按照我们之前列入的清单来编写我们的游戏.现在就让我们来创建一个熊猫这个类Panda.swift.我们将采取分解的方式,一步一步的完成Panda.swift ...

  7. Swift语言实战晋级-第9章 游戏实战-跑酷熊猫-1

    学习目标 一.进一步学习Swift的游戏制作 二.掌握SKNode,SKSpriteNode的运用 三.了解SpriteKit的物理系统 四.掌握动作(SKAction)的运用 在这一章,我们要通过制 ...

  8. 我写了本破书-swift语言实战晋级

    本书是一本介绍Swift实战的实用图书,旨在帮有一定编程基础的童鞋能够快速上手Swift. 本书的结构是先讲解了Swift语言的精要,没有基础的童鞋可以学习,有基础的童鞋可以当做复习. 接着讲解如何用 ...

  9. swift语言实战晋级-1 Swift开发环境的搭建

    想要进行Swift的学习,必须要有个开发环境.简单的说就是装好了Xcode的Mac系统.那么接下来我们就简单了解一下这方面的内容. 1.1 下载Xcode Xcode是苹果公司出的编程工具,类似于微软 ...

随机推荐

  1. java io系列15之 DataOutputStream(数据输出流)的认知、源码和示例

    本章介绍DataOutputStream.我们先对DataOutputStream有个大致认识,然后再深入学习它的源码,最后通过示例加深对它的了解. 转载请注明出处:http://www.cnblog ...

  2. [Tool] Visual Studio必备插件 + 技能

    总结自己常用的VS插件,其中部分需要注册. 在该链接http://www.cnblogs.com/neverc/p/4591501.html中提供 1.Web Essentials(测试支持2010, ...

  3. CSS--复习之旅(一)

    CSS概述 CSS 指层叠样式表 (Cascading Style Sheets) 样式定义如何显示 HTML 元素 样式通常存储在样式表中 把样式添加到 HTML 4.0 中,是为了解决内容与表现分 ...

  4. python学习笔记 - 初识socket

    socket socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. sock ...

  5. KMP算法 --- 深入理解next数组

    在KMP算法中有个数组,叫做前缀数组,也有的叫next数组. 每一个子串有一个固定的next数组,它记录着字符串匹配过程中失配情况下可以向前多跳几个字符. 当然它描述的也是子串的对称程度,程度越高,值 ...

  6. JS 获取 本周、本月、本季度、本年、上月、上周、上季度、去年

    工具类定义: /** * 日期范围工具类 */ var dateRangeUtil = (function () { /*** * 获得当前时间 */ this.getCurrentDate = fu ...

  7. BI之SSAS完整实战教程3 -- 创建第一个多维数据集

    上一篇我们已经完成了数据源的准备工作,现在我们就开始动手,创建第一个多维数据集(Cube). 文章提纲 使用多维数据集向导创建多维数据集 总结Cube设计器简介 维度细化 总结 一.使用向导创建多维数 ...

  8. 数据库表被锁表,select会等待。

    SELECT * FROM dbo.Table_1 WITH(NOLOCK) 这样就可以不用等待,但数据读的是被锁之前的数据,表被锁了,肯定会有对表的update,delete操作. 如果对数据的准确 ...

  9. FreeBSD 9.1安装KMS 这是一个伪命题###### ,9....

    FreeBSD 9.1安装KMS 这是一个伪命题###### ,9.1的内核已经加入了KMS内核支持 需要更新ports中的xorg到打了补丁的版本,无意中发现了一个pkg源,这个事也搞定了 free ...

  10. js小数计算小数点后显示多位小数(转)

    首先写一个demo 重现问题,我使用的是一个js在线测试环境[打开] 改写displaynum()函数 function displaynum(){var num = 22.77;alert(num ...