图书介绍

IOS 8开发指南 第2版pdf电子书版本下载

IOS  8开发指南  第2版
  • 管蕾编著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115393319
  • 出版时间:2015
  • 标注页数:841页
  • 文件大小:146MB
  • 文件页数:861页
  • 主题词:移动终端-应用程序-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快] 温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页 直链下载[便捷但速度慢]   [在线试读本书]   [在线获取解压码]

下载说明

IOS 8开发指南 第2版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一篇 必备技术篇 2

第1章 iOS开发入门 2

1.1 iOS系统介绍 2

1.1.1 iOS发展史 2

1.1.2 全新的版本——iOS 8 2

1.2 iOS开发之旅 4

1.3 工欲善其事,必先利其器——搭建开发环境 5

1.3.1 Xcode 6介绍 5

1.3.2 iOS SDK介绍 6

1.3.3 下载并安装Xcode 6 7

1.4 使用Xcode开发环境 9

1.4.1 使用Xcode创建程序的基本步骤 9

1.4.2 Xcode的基本功能 10

1.5 启动iOS 8模拟器 16

1.6 iOS的常用开发框架 18

1.6.1 Foundation框架简介 18

1.6.2 Cocoa框架简介 19

1.7 常用的第三方工具 20

1.7.1 模拟器 iPhone Simulator 20

1.7.2 Interface Builder 21

第2章 Objective-C语言基础 22

2.1 最耀眼的新星 22

2.1.1 看一份统计数据 22

2.1.2 究竟何为Objective-C 22

2.1.3 为什么选择Objective-C 23

2.2 Objective-C的优点及缺点 23

2.3 一个简单的例子 24

2.3.1 使用Xcode编辑代码 24

2.3.2 基本元素介绍 26

2.4 数据类型和常量 30

2.4.1 int类型 30

2.4.2 float类型 31

2.4.3 double类型 32

2.4.4 char类型 32

2.4.5 字符常量 33

2.4.6 id类型 34

2.4.7 限定词 35

2.4.8 总结基本数据类型 37

2.5 字符串 37

2.6 算数表达式 38

2.6.1 运算符的优先级 38

2.6.2 整数运算和一元负号运算符 39

2.6.3 模运算符 40

2.6.4 整型值和浮点值的相互转换 41

2.6.5 类型转换运算符 42

2.7 表达式 42

2.7.1 常量表达式 42

2.7.2 条件运算符 43

2.7.3 sizeof运算符 43

2.7.4 关系运算符 44

2.7.5 强制类型转换运算符 45

2.8 位运算符 45

2.8.1 按位与运算符 45

2.8.2 按位或运算符 46

2.8.3 按位异或运算符 46

2.8.4 一次求反运算符 47

2.8.5 向左移位运算符 48

2.8.6 向右移位运算符 48

2.8.7 总结Objective-C的运算符 48

第3章 Swift语言基础 50

3.1 Swift概述 50

3.1.1 Swift的创造者 50

3.1.2 Swift的优势 50

3.2 数据类型和常量 52

3.2.1 int类型 52

3.2.2 float类型 52

3.2.3 double类型 53

3.2.4 char类型 53

3.2.5 字符常量 53

3.3 变量和常量 53

3.3.1 常量详解 53

3.3.2 变量详解 54

3.4 字符串和字符 55

3.4.1 字符串字面量 55

3.4.2 初始化空字符串 55

3.4.3 字符串可变性 56

3.4.4 值类型字符串 56

3.4.5 计算字符数量 56

3.4.6 连接字符串和字符 57

3.4.7 字符串插值 57

3.4.8 比较字符串 58

3.4.9 Unicode 58

3.5 流程控制 60

3.5.1 for循环(1) 61

3.5.2 for循环(2) 62

3.5.3 while循环 62

3.6 条件语句 63

3.6.1 if语句 63

3.6.2 switch语句 64

3.7 函数 65

3.7.1 函数的声明与调用 65

3.7.2 函数的参数和返回值 66

3.7.3 函数参数名 68

3.8 实战演练——使用Xcode创建Swift程序 70

第4章 Cocoa Touch框架 72

4.1 Cocoa Touch基础 72

4.1.1 Cocoa Touch概述 72

4.1.2 Cocoa Touch中的框架 73

4.1.3 Cocoa Touch的优势 73

4.2 iPhone的技术层 73

4.2.1 Cocoa Touch层 73

4.2.2 多媒体层 77

4.2.3 核心服务层 78

4.2.4 核心OS层 79

4.3 Cocoa Touch中的框架 79

4.3.1 Core Animation(图形处理)框架 79

4.3.2 Core Audio(音频处理)框架 80

4.3.3 Core Data(数据处理)框架 80

4.4 iOS程序的生命周期 81

4.4.1 从一段代码看iOS程序的生命周期 81

4.4.2 iOS程序生命周期的原理 82

4.4.3 UIViewController的生命周期 84

4.5 Cocoa中的类 86

4.5.1 核心类 86

4.5.2 数据类型类 88

4.5.3 UI界面类 91

4.6 国际化 94

4.7 使用Xcode学习iOS框架 95

4.7.1 使用Xcode文档 95

4.7.2 快速帮助 96

第5章 Xcode Interface Builder界面开发 98

5.1 Interface Builder基础 98

5.1.1 Interface Builder的作用 98

5.1.2 Interface Builder的新特色 98

5.2 Interface Builder采用的方法 100

5.3 Interface Builder的故事板 100

5.3.1 推出的背景 100

5.3.2 故事板的文档大纲 101

5.3.3 文档大纲的区域对象 102

5.4 创建一个界面 103

5.4.1 对象库 103

5.4.2 将对象加入视图中 104

5.4.3 使用IB布局工具 105

5.5 定制界面外观 107

5.5.1 使用属性检查器 107

5.5.2 设置辅助功能属性 108

5.5.3 测试界面 108

5.6 实战演练——将Xcode界面连接到代码 109

5.6.1 打开项目 109

5.6.2 输出口和操作 110

5.6.3 创建到输出口的连接 110

5.6.4 创建到操作的连接 112

第6章 使用Xcode编写MVC程序 114

6.1 MVC模式基础 114

6.1.1 诞生背景 114

6.1.2 分析结构 114

6.1.3 MVC的特点 115

6.1.4 使用MVC实现程序设计的结构化 115

6.2 Xcode中的MVC 116

6.2.1 原理 116

6.2.2 模板就是给予MVC的 116

6.3 在Xcode中实现MVC 117

6.3.1 视图 117

6.3.2 视图控制器 117

6.4 数据模型 119

6.5 实战演练——使用模板Single View Application 120

6.5.1 创建项目 120

6.5.2 规划变量和连接 123

6.5.3 设计界面 124

6.5.4 创建并连接输出口和操作 126

6.5.5 实现应用程序逻辑 128

6.5.6 生成应用程序 129

第二篇 核心技术篇 131

第7章 文本框和文本视图 131

7.1 文本框(UITextField) 131

7.1.1 文本框基础 131

7.1.2 实战演练——在屏幕中显示一个文本输入框 131

7.1.3 实战演练——设置文本输入框的边框线样式 132

7.1.4 实战演练——设置文本输入框的字体和颜色 133

7.1.5 实战演练——在文本输入框中设置一个清空按钮 133

7.1.6 实战演练——为文本输入框设置背景图片 134

7.1.7 实战演练——实现UITextField控件(基于Swift实现) 135

7.2 文本视图(UITextView) 140

7.2.1 文本视图基础 140

7.2.2 实战演练——在屏幕中换行显示文本 141

7.2.3 实战演练——在屏幕中显示可编辑的文本 142

7.2.4 实战演练——设置屏幕中文本的对齐方式 143

7.2.5 实战演练——使用UITextView控件(基于Swift实现) 145

第8章 按钮和标签 147

8.1 标签(UILabel) 147

8.1.1 标签(UILabel)的属性 147

8.1.2 实战演练——使用标签(UILabel)显示一段文本 147

8.1.3 实战演练——在屏幕中显示指定字体和指定大小的文本 150

8.1.4 实战演练——设置屏幕中文本的对齐方式 150

8.2 按钮(UIButton) 151

8.2.1 按钮基础 151

8.2.2 实战演练——按下按钮后触发一个事件 152

8.2.3 实战演练——在屏幕中显示不同样式的按钮 153

8.3 实战演练——联合使用文本框、文本视图和按钮 154

8.3.1 创建项目 154

8.3.2 设计界面 156

8.3.3 创建并连接输出口和操作 162

8.3.4 实现按钮模板 163

8.3.5 隐藏键盘 164

8.3.6 实现应用程序逻辑 166

8.3.7 总结执行 167

8.4 实战演练——显示一个指定样式的文本(基于Swift实现) 169

第9章 滑块、步进和图像 171

9.1 滑块控件(UISlider) 171

9.1.1 使用Slider控件的基本方法 171

9.1.2 实战演练——滑动滑块时显示对应的值 172

9.1.3 实战演练——滑动滑块控制文字的大小 173

9.1.4 实战演练——实现各种各样的滑块 174

9.1.5 实战演练——实现UISlider控件效果(基于Swift实现) 180

9.2 步进控件(UIStepper) 182

9.3 图像视图控件(UIImageView) 183

9.3.1 UIImageView的常用操作 183

9.3.2 实战演练——在屏幕中显示图像 185

9.3.3 实战演练——在屏幕中绘制一幅图像 186

9.3.4 实战演练——在屏幕中绘图时设置透明度 187

9.3.5 实战演练——使用UIImageView控件(基于Swift实现) 188

第10章 开关控件和分段控件 191

10.1 开关控件(UISwitch) 191

10.1.1 开关控件基础 191

10.1.2 实战演练——改变UISwitch的文本和颜色 191

10.1.3 实战演练——显示具有开关状态的开关 193

10.1.4 实战演练——联合使用UISlider与UISwitch控件 195

10.1.5 实战演练——控制是否显示密码明文(基于Swift实现) 196

10.2 分段控件 198

10.2.1 分段控件的属性和方法 199

10.2.2 实战演练——使用UISegmentedControl控件 200

10.2.3 实战演练——选择一个分段卡后可以改变屏幕的背景颜色 202

10.2.4 实战演练——设置分段卡的显示样式 203

10.2.5 实战演练——设置不显示分段卡的选择状态 204

10.2.6 实战演练——改变分段卡的显示颜色 204

10.2.7 实战演练——选择某个选项时在此分段卡中显示一幅图片 205

10.2.8 实战演练——使用UISegmentedControl控件(基于Swift实现) 206

第11章 Web视图控件、可滚动视图控件和翻页控件 208

11.1 Web视图(UIWebView) 208

11.1.1 Web视图基础 208

11.1.2 实战演练——在屏幕中显示指定的网页 209

11.1.3 实战演练——控制屏幕中的网页 210

11.1.4 实战演练——在网页中加载显示PDF、Word和JPEG图片 211

11.1.5 实战演练——在网页中加载HTML代码 213

11.1.6 实战演练——在网页中实现触摸处理 214

11.1.7 实战演练——使用UIWebView控件(基于Swift实现) 216

11.2 可滚动的视图(UIScrollView) 220

11.2.1 UIScrollView的基本用法 220

11.2.2 实战演练——使用可滚动视图控件 224

11.2.3 实战演练——使用UIScrollView控件(基于Swift实现) 227

11.3 实战演练——联合使用开关、分段控件和Web视图控件 228

11.3.1 创建项目 228

11.3.2 设计界面 229

11.3.3 创建并连接输出口和操作 232

11.3.4 实现应用程序逻辑 233

11.3.5 生成应用程序 236

11.4 翻页控件(UIPageControl) 236

11.4.1 PageControll控件基础 236

11.4.2 实战演练——联合使用UIPageControl控件和UIScrollView控件(基于Swift实现) 237

第12章 提醒和操作表 240

12.1 提醒视图(UIAlertView) 240

12.1.1 UIAlertView基础 240

12.1.2 不同的提醒效果 243

12.1.3 实战演练——实现一个自定义提醒对话框 244

12.1.4 实战演练——使用UIAlertView控件(基于Swift实现) 246

12.2 操作表(UIActionSheet) 249

12.2.1 操作表的基本用法 250

12.2.2 响应操作表 251

12.2.3 使用UIActionSheet的流程 252

12.2.4 实战演练——联合使用UIAlertController控件和UIActionsheet控件(基于Swift实现) 254

第13章 工具栏、日期选择器 256

13.1 工具栏(UIToolbar) 256

13.1.1 工具栏基础 256

13.1.2 修改UIToolBar的背景颜色 257

13.1.3 实战演练——联合使用UIToolBar控件和UIView控件 258

13.1.4 实战演练——实现一个播放、暂停按钮 259

13.2 选择器视图(UIPickerView) 261

13.2.1 选择器视图基础 261

13.2.2 实战演练——实现两个UIPickerView控件间的数据依赖 264

13.2.3 实战演练——自定义一个选择器 266

13.2.4 实战演练——实现一个数据选择器(基于Swift实现) 274

13.3 日期选择(UIDatePicker) 279

13.3.1 UIDatePicker基础 279

13.3.2 实战演练——使用UIDatePicker 281

13.3.3 实战演练——实现一个日期选择器 283

13.3.4 实战演练——使用UIDatePicker控件(基于Swift实现) 289

第14章 表视图(UITable) 293

14.1 表视图基础 293

14.1.1 表视图的外观 293

14.1.2 表单元格 293

14.1.3 添加表视图 293

14.1.4 UITableView详解 297

14.2 实战演练 299

14.2.1 实战演练——拆分表视图 299

14.2.2 实战演练——列表显示18条数据 301

14.2.3 实战演练——分段显示列表中的数据 302

14.2.4 实战演练——删除单元格 304

14.2.5 实战演练——自定义UITableViewCell 305

14.3 实战演练——在表视图中使用其他控件(基于Swift实现) 309

14.4 实战演练——在表视图中显示远程信息(基于Swift实现) 311

第15章 活动指示器、进度条和检索条 314

15.1 活动指示器(UIActivityIndicatorView) 314

15.1.1 活动指示器基础 314

15.1.2 实战演练——实现一个播放器的活动指示器 314

15.1.3 实战演练——使用UIActivityIndicatorView控件(基于Swift实现) 316

15.2 进度条(UIProgressView) 318

15.2.1 进度条基础 318

15.2.2 实战演练——实现一个蓝色进度条效果 318

15.2.3 实战演练——在进度条中显示进度百分比 319

15.2.4 实战演练——实现自定义进度条效果(基于Swift实现) 321

15.3 检索条(UISearchBar) 325

15.3.1 检索条基础 325

15.3.2 实战演练——在屏幕中实现一个检索框效果 326

15.3.3 实战演练——实现一个实时显示检索框效果 327

15.3.4 实战演练——设置检索框的背景颜色 327

15.3.5 实战演练——在检索框中添加一个书签按钮 328

15.3.6 实战演练——在检索框中添加一个范围条 330

15.3.7 实战演练——使用UISearchBar控件(基于Swift实现) 331

第16章 UIView详解 333

16.1 UIView基础 333

16.1.1 UIView的结构 333

16.1.2 视图架构 335

16.1.3 视图层次和子视图管理 336

16.1.4 视图绘制周期 336

16.2 实战演练——设置UIView的位置和尺寸 336

16.3 实战演练——隐藏指定的UIView区域 337

16.4 实战演练——改变背景颜色 338

16.5 实战演练——实现背景透明 340

16.6 实战演练——定位屏幕中的图片 341

16.7 实战演练——旋转和缩放视图 344

第17章 视图控制器 347

17.1 导航控制器(UIViewController)简介 347

17.1.1 UIViewController基础 347

17.1.2 实战演练——实现不同界面之间的跳转处理 348

17.2 使用UINavigationController 349

17.2.1 导航栏、导航项和栏按钮项 350

17.2.2 UINavigationController详解 350

17.2.3 在故事板中使用导航控制器 353

17.2.4 使用UINavigationController的流程 354

17.2.5 实战演练——实现不同视图的切换 355

17.2.6 实战演练——通过列表实现不同界面之间的跳转 357

17.2.7 实战演练——使用导航控制器展现3个场景 359

17.3 选项卡栏控制器 363

17.3.1 选项卡栏和选项卡栏项 364

17.3.2 在选项卡栏控制器管理的场景之间共享数据 366

17.3.3 UITabBarController使用详解 366

17.3.4 实战演练——实现不同场景的切换 368

17.3.5 实战演练——使用选项卡栏控制器构建3个场景 371

17.4 实战演练——使用UIViewController控件(基于Swift实现) 375

第三篇 技术进阶篇 380

第18章 实现多场景和弹出框 380

18.1 多场景故事板 380

18.1.1 多场景故事板基础 380

18.1.2 创建多场景项目 381

18.1.3 实战演练——使用第二个视图来编辑第一个视图中的信息 385

18.1.4 实战演练——实现多个视图之间的切换 389

18.2 实战演练——多场景视图数据传输(基于Swift实现) 393

第19章 iPad弹出框和分割视图控制器 398

19.1 iPad弹出框 398

19.1.1 创建弹出框 398

19.1.2 创建弹出切换 398

19.1.3 手工显示弹出框 400

19.1.4 响应用户关闭弹出框 400

19.1.5 以编程方式创建并显示弹出框 401

19.1.6 实战演练——使用弹出框更新内容 403

19.2 探索分割视图控制器 405

19.2.1 分割视图控制器基础 406

19.2.2 表视图实战演练 408

第20章 界面旋转、大小和全屏处理 413

20.1 启用界面旋转 413

20.2 设计可旋转和调整大小的界面 414

20.2.1 自动旋转和自动调整大小 414

20.2.2 调整框架 414

20.2.3 切换视图 414

20.2.4 实战演练——使用Interface Builder创建可旋转和调整大小的界面 414

20.2.5 实战演练——在旋转时调整控件 417

20.2.6 实战演练——旋转时切换视图 421

第21章 图形、图像、图层和动画 424

21.1 图形处理 424

21.1.1 iOS的绘图机制 424

21.1.2 实战演练——在屏幕中绘制一个三角形 425

21.2 图像处理 427

21.2.1 实战演练——实现颜色选择器/调色板功能 428

21.2.2 实战演练——实现滑动颜色选择器/调色板功能 429

21.3 图层 431

21.3.1 视图和图层 432

21.3.2 实战演练——在屏幕中实现3个重叠的矩形 432

21.3.3 实战演练——实现图层的变换 433

21.3.4 实战演练——在指南针上实现某种“页面翻转”的效果 436

21.4 实现动画 439

21.4.1 UIImageView动画 439

21.4.2 视图动画UIView 439

21.4.3 Core Animation详解 444

21.4.4 实战演练——联合使用图像动画、滑块和步进控件 446

21.4.5 实战演练——实现“烟花烟花满天飞”的效果 458

21.5 实战演练——图形图像的人脸检测处理(基于Swift实现) 460

第22章 声音服务 464

22.1 访问声音服务 464

22.1.1 声音服务基础 464

22.1.2 实战演练——播放声音文件 465

22.2 提醒和振动 469

22.2.1 播放提醒音 469

22.2.2 实战演练——实用iOS的提醒功能 469

第23章 多媒体应用 478

23.1 Media Player框架 478

23.1.1 Media Player框架中的类 478

23.1.2 使用电影播放器 479

23.1.3 处理播放结束 480

23.1.4 使用多媒体选择器 480

23.1.5 使用音乐播放器 481

23.1.6 实战演练——使用Media Player播放视频 482

23.2 AV Foundation框架 484

23.2.1 准备工作 484

23.2.2 使用AV音频播放器 484

23.2.3 使用AV录音机 485

23.2.4 使用AV Foundation框架播放音频的流程 485

23.3 图像选择器(UIImagePickerController) 487

23.3.1 使用图像选择器 487

23.3.2 图像选择器控制器委托 487

23.3.3 UIImagePickerController在iPhone和iPad上的区别 488

23.3.4 用UIImagePickerController调用系统相机 489

23.3.5 防止UIImagePickerController“坏死” 489

23.4 实战演练——个多媒体的应用程序 490

23.4.1 实现概述 490

23.4.2 创建项目 490

23.4.3 设计界面 491

23.4.4 创建并连接输出口和操作 492

23.4.5 实现电影播放器 492

23.4.6 实现音频录制和播放 494

23.4.7 使用照片库和相机 497

23.4.8 实现Core Image滤镜 498

23.4.9 访问并播放音乐库 499

23.5 实战演练——实现ImagePicker功能(基于Swift语言) 502

23.6 实战演练——实现一个音乐播放器(基于Swift) 513

第24章 定位处理 520

24.1 Core Location框架 520

24.1.1 Core Location基础 520

24.1.2 使用流程 520

24.2 获取位置 522

24.2.1 位置管理器委托 523

24.2.2 处理定位错误 524

24.2.3 位置精度和更新过滤器 524

24.2.4 获取航向 525

24.3 地图功能 526

24.3.1 Map Kit基础 526

24.3.2 为地图添加标注 527

24.4 实战演练——创建一个支持定位的应用程序 528

24.4.1 创建项目 528

24.4.2 设计视图 529

24.4.3 创建并连接输出口 530

24.4.4 实现应用程序逻辑 531

24.4.5 生成应用程序 532

24.5 实战演练——在屏幕中实现一个定位系统 533

24.5.1 设计界面 533

24.5.2 具体编码 534

24.6 实战演练——使用谷歌地图 536

24.6.1 添加打开地图功能 536

24.6.2 升级视图控制器 538

24.6.3 添加自定义地图标注对象 540

第25章 HomeKit智能家居应用开发 542

25.1 HomeKit基础 542

25.1.1 苹果HomeKit如何牵动全国智能硬件格局 542

25.1.2 给开发者和厂家提供的巨大机会 543

25.1.3 苹果正式推出HomeKit硬件标准 543

25.2 HomeKit开发基础 544

25.2.1 HomeKit应用程序的层次模型 544

25.2.2 HomeKit程序架构模式 545

25.2.3 HomeKit中的类 546

25.3 实战演练——实现一个HomeKit控制程序 547

25.4 实战演练——实现一个HomeKit控制程序(基于Swift语言) 563

第26章 读写应用程序数据 578

26.1 iOS应用程序和数据存储 578

26.2 用户默认设置 579

26.3 设置束 579

26.3.1 设置束基础 579

26.3.2 实战演练——通过隐式首选项实现一个手电筒程序 581

26.4 直接访问文件系统 584

26.4.1 应用程序数据的存储位置 584

26.4.2 获取文件路径 585

26.4.3 读写数据 585

26.4.4 读取和写入文件 586

26.4.5 通过plist文件存取文件 587

26.4.6 保存和读取文件 589

26.4.7 文件共享和文件类型 589

26.4.8 传递一个文档 590

26.4.9 实战演练——实现一个收集用户信息的程序 590

26.5 iCloud存储 594

26.6 使用SQLite3存储和读取数据 595

26.7 核心数据 599

26.7.1 Core Data基础 599

26.7.2 Core Data基本架构 600

26.7.3 托管对象(Managed Objects)和托管对象模型(Managed Object Model) 603

26.7.4 实战演练——在iOS中使用CoreData 604

26.8 互联网数据 606

26.8.1 XML和JSON 606

26.8.2 实战演练——使用JSON获取网站中的照片信息 609

第四篇 技术提高篇 614

第27章 触摸和手势识别 614

27.1 多点触摸和手势识别基础 614

27.2 触摸处理 614

27.2.1 触摸事件和视图 615

27.2.2 实战演练——触摸屏幕中的按钮 620

27.2.3 实战演练——同时滑动屏幕中的两个滑块 621

27.2.4 实战演练——触摸屏幕检测 622

27.2.5 实战演练——触摸屏幕中的文字标签 622

27.3 手势处理 623

27.3.1 手势处理基础 623

27.3.2 实战演练——实现一个手势识别器 629

第28章 和硬件之间的操作 636

28.1 加速计和陀螺仪 636

28.1.1 加速计基础 636

28.1.2 陀螺仪 640

28.1.3 实战演练——检测倾斜和旋转 641

28.2 访问朝向和运动数据 645

28.2.1 两种方法 645

28.2.2 实战演练——检测朝向 647

28.3 实战演练——使用Motion传感器(基于Swift语言) 649

第29章 地址簿、邮件和Twitter 651

29.1 地址簿 651

29.1.1 框架Address Book UI 651

29.1.2 框架Address Book 652

29.2 电子邮件 653

29.3 使用Twitter发送推特信息 654

29.4 实战演练——联合使用地址簿、电子邮件、Twitter和地图 654

29.4.1 创建项目 655

29.4.2 设计界面 655

29.4.3 创建并连接输出口和操作 656

29.4.4 实现地址簿逻辑 656

29.4.5 实现地图逻辑 658

29.4.6 实现电子邮件逻辑 660

29.4.7 实现Twitter逻辑 661

29.4.8 生成应用程序 662

29.5 实战演练——开发一个Twitter客户端(基于Swift语言) 662

第30章 开发通用的项目程序 666

30.1 开发通用应用程序 666

30.1.1 在iOS 6中开发通用应用程序 666

30.1.2 在iOS 7、iOS 8中开发通用应用程序 667

30.1.3 图标文件 674

30.1.4 启动图像 675

30.2 实战演练——使用通用程序模板创建通用应用程序 675

30.2.1 创建项目 675

30.2.2 设计界面 675

30.2.3 创建并连接输出口 676

30.2.4 实现应用程序逻辑 676

30.3 实战演练——使用视图控制器 677

30.3.1 创建项目 677

30.3.2 设计界面 678

30.3.3 创建并连接输出口 678

30.3.4 实现应用程序逻辑 678

30.3.5 生成应用程序 679

30.4 实战演练——使用多个目标 679

30.4.1 将iPhone目标转换为iPad目标 679

30.4.2 将iPad目标转换为iPhone目标 680

30.5 实战演练——创建基于“主—从”视图的应用程序 680

30.5.1 创建项目 681

30.5.2 调整iPad界面 681

30.5.3 调整iPhone界面 682

30.5.4 实现应用程序数据源 683

30.5.5 实现主视图控制器 685

30.5.6 实现细节 视图控制器 686

30.5.7 生成应用程序 687

30.6 实战演练——开发一个语音识别程序(基于Swift) 688

第31章 推服务和多线程 697

31.1 推服务 697

31.1.1 推服务介绍 697

31.1.2 推服务的机制 698

31.2 多线程 698

31.2.1 多线程基础 698

31.2.2 iOS中的多线程 700

31.2.3 线程的同步与锁 704

31.2.4 线程的交互 705

31.3 ARC机制 706

31.3.1 ARC概述 706

31.3.2 ARC中的新规则 707

第32章 指纹识别技术——Touch ID详解 708

32.1 初步认识Touch ID 708

32.2 开发Touch ID应用程序 710

32.2.1 iOS 8的新功能 710

32.2.2 开发Touch ID应用程序的步骤 711

32.3 实战演练——使用Touch ID认证 712

32.4 实战演练——使用Touch ID密码和指纹认证 714

32.5 实战演练——Touch ID认证的综合演练 718

第33章 游戏开发 725

33.1 Sprite Kit框架基础 725

33.1.1 Sprite Kit的优点和缺点 725

33.1.2 Sprite Kit、Cocos2D、Cocos2D-X和Unity的选择 725

33.1.3 实战演练——开发一个Sprite Kit游戏程序 726

33.2 实战演练——开发一个四子棋游戏(基于Swift语言) 734

第34章 HealthKit健康应用开发 743

34.1 HealthKit基础 743

34.1.1 Healthkit介绍 743

34.1.2 市面中的Healthkit应用现状 743

34.1.3 接入Healthkit的好处 744

34.2 HealthKit开发基础 744

34.2.1 开发要求 745

34.2.2 HealthKit开发思路 745

34.3 实战演练——检测一天消耗掉的能量 746

34.4 实战演练——能量检测仪(基于Swift实现) 758

第35章 WatchKit智能手表开发 779

35.1 Apple Watch介绍 779

35.2 WatchKit开发详解 780

35.2.1 搭建WatchKit开发环境 780

35.2.2 WatchKit架构 782

35.2.3 WatchKit布局 784

35.2.4 Glances和Notifications 784

35.2.5 Watch App的生命周期 784

35.3 开发Apple Watch应用程序 786

35.3.1 创建Watch应用 786

35.3.2 创建Glance界面 787

35.3.3 自定义通知界面 787

35.3.4 配置Xcode项目 787

35.4 实战演练——AppleWatch界面布局 789

35.5 实战演练——共享Apple Watch和iPhone的内容(基于Swift实现) 792

35.6 实战演练——Apple Watch显示地图、网页和单元格(基于Swift实现) 799

第五篇 综合实战篇 802

第36章 公交路线查询系统 802

36.1 公交路线查询系统介绍 802

36.2 公交路线查询系统主界面 802

36.2.1 线路查询视图 803

36.2.2 线路详情模块 806

36.2.3 线路中某站详情 809

36.3 站站查询 813

36.3.1 站站查询主视图 813

36.3.2 站站查询详情视图 821

36.4 线路收藏本站历史 823

36.5 地图信息 828

36.5.1 地图主视图 828

36.5.2 Web地图视图 830

36.6 系统设置 831

36.6.1 主视图 831

36.6.2 当前城市视图 836

36.6.3 数据下载视图 839

附录 iOS开发常见疑难解答 842

精品推荐