《IOS 9应用开发入门经典 第7版》PDF下载

  • 购买积分:19 如何计算积分?
  • 作  者:(美)JOHN RAY著;袁国忠译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2016
  • ISBN:7115421784
  • 页数:686 页
图书介绍:

第1章 为开发准备好系统和iOS设备 1

1.1 欢迎进入iOS平台 1

1.1.1 iOS设备 1

1.1.2 显示屏和图形 2

1.1.3 应用程序资源约束 4

1.1.4 连接性 4

1.1.5 输入和反馈 4

1.2 成为iOS开发人员 5

1.2.1 Apple开发人员计划 5

1.2.2 加入付费的开发人员计划 6

1.2.3 安装Xcode 7

1.3 运行iOS应用 9

1.3.1 什么是开发供应配置文件 9

1.3.2 配置用于开发的设备 9

1.3.3 启动应用 11

1.4 开发技术概述 14

1.4.1 Apple开发工具 14

1.4.2 Swift 15

1.4.3 CoCoaTouch 15

1.4.4 模型-视图-控制器 15

1.5 进一步探索 15

1.6 小结 15

1.7 问与答 16

1.8 作业 16

1.8.1 测验 16

1.8.2 答案 18

1.8.3 练习 18

第2章 Xcode和iOS模拟器简介 19

2.1 使用Xcode 19

2.1.1 创建和管理项目 20

2.1.2 编辑和导航代码 29

2.1.3 生成应用程序 35

2.1.4 管理项目属性 38

2.1.5 设置支持的设备朝向 39

2.1.6 应用程序图标、启动图像和启动屏幕 40

2.2 使用iOS模拟器 43

2.2.1 启动应用程序 44

2.2.2 模拟多点触摸事件 45

2.2.3 旋转模拟的设备 46

2.2.4 模拟其他情况 46

2.2.5 添加其他要模拟的设备 47

2.3 进一步探索 49

2.4 小结 49

2.5 问与答 49

2.6 作业 49

2.6.1 测验 49

2.6.2 答案 51

2.6.3 练习 51

第3章 探索Swift和iOS试验场 52

3.1 面向对象编程和Swift 52

3.2 面向对象编程术语 54

3.3 探索Swift文件结构 55

3.3.1 类文件 56

3.3.2 自动生成的结构 60

3.4 Swift编程基础 61

3.4.1 声明变量和常量 61

3.4.2 使用方法 70

3.4.3 表达式和决策 75

3.5 内存管理和自动引用计数 81

3.6 iOS试验场简介 82

3.6.1 新建试验场 82

3.6.2 使用试验场 83

3.6.3 生成并查看输出 84

3.7 进一步探索 87

3.8 小结 87

3.9 问与答 88

3.10 作业 88

3.10.1 测验 88

3.10.2 答案 90

3.10.3 练习 90

第4章 CocoaTouch内幕 91

4.1 Cocoa Touch是什么 91

4.1.1 冷静面对大量的功能 92

4.1.2 少年老成 92

4.2 探索iOS技术层 93

4.2.1 CocoaTouch层 93

4.2.2 多媒体层 94

4.2.3 核心服务层 96

4.2.4 核心OS层 98

4.3 跟踪iOS应用程序的生命周期 98

4.4 Cocoa基础 99

4.4.1 核心应用程序类 100

4.4.2 数据类型类 101

4.4.3 界面类 103

4.5 使用Xcode探索iOS框架 106

4.5.1 Xcode文档 106

4.5.2 快速帮助 110

4.6 进一步探索 111

4.7 小结 112

4.8 问与答 112

4.9 作业 112

4.9.1 测验 112

4.9.2 答案 114

4.9.3 练习 114

第5章 探索Xcode Interface Builder 115

5.1 了解Interface Builder 115

5.1.1 IB采用的方法 116

5.1.2 剖析IB故事板 116

5.2 创建用户界面 120

5.2.1 对象库 121

5.2.2 将对象加入到视图中 121

5.2.3 使用IB编辑工具 122

5.2.4 自动布局系统 126

5.3 定制界面外观 128

5.3.1 使用属性检查器 128

5.3.2 设置辅助功能属性 129

5.3.3 预览界面 131

5.4 连接到代码 133

5.4.1 打开项目 133

5.4.2 实现概述 134

5.4.3 输出口和操作 135

5.4.4 对象身份 139

5.5 进一步探索 140

5.6 小结 141

5.7 问与答 141

5.8 作业 141

5.8.1 测验 141

5.8.2 答案 143

5.8.3 练习 143

第6章 模型-视图-控制器应用程序设计 144

6.1 了解设计模式MVC 144

6.1.1 制作意大利面条式代码 145

6.1.2 使用MVC将应用程序设计结构化 145

6.2 Xcode如何实现MVC 146

6.2.1 视图 146

6.2.2 视图控制器 146

6.2.3 数据模型 148

6.3 使用模板Single View Application 149

6.3.1 实现概述 149

6.3.2 创建项目 149

6.3.3 规划变量和连接 153

6.3.4 设计界面 155

6.3.5 创建并连接输出口和操作 158

6.3.6 实现应用程序逻辑 161

6.3.7 生成应用程序 161

6.4 进一步探索 162

6.5 小结 162

6.6 问与答 162

6.7 作业 163

6.7.1 测验 163

6.7.2 答案 164

6.7.3 练习 165

第7章 使用文本、键盘和按钮 166

7.1 基本用户输入和输出 166

7.1.1 按钮 166

7.1.2 文本框和文本视图 167

7.1.3 标签 167

7.2 使用文本框、文本视图和按钮 168

7.2.1 实现概述 168

7.2.2 创建项目 168

7.2.3 使用切割技术制作按钮模板 169

7.2.4 设计界面 173

7.2.5 创建并连接输出口和操作 182

7.2.6 隐藏键盘 184

7.2.7 实现应用程序逻辑 187

7.2.8 生成应用程序 189

7.3 进一步探索 189

7.4 小结 190

7.5 问与答 190

7.6 作业 190

7.6.1 测验 190

7.6.2 答案 192

7.6.3 练习 192

第8章 处理图像、动画、滑块和步进控件 193

8.1 用户输入和输出 193

8.1.1 滑块 194

8.1.2 步进控件 194

8.1.3 图像视图 194

8.1.4 视觉效果视图 195

8.2 创建并管理图像动画、滑块和步进控件 195

8.2.1 实现概述 195

8.2.2 创建项目 196

8.2.3 设计界面 197

8.2.4 创建并连接到输出口和操作 204

8.2.5 实现应用程序逻辑 207

8.2.6 生成应用程序 213

8.3 进一步探索 213

8.4 小结 214

8.5 问与答 214

8.6 作业 214

8.6.1 测验 214

8.6.2 答案 216

8.6.3 练习 216

第9章 使用高级界面对象和视图 217

9.1 再谈用户输入和输出 217

9.1.1 开关 218

9.1.2 分段控件 218

9.1.3 Web视图 219

9.1.4 可滚动的视图 222

9.1.5 堆叠视图 222

9.2 使用开关、分段控件和 Web视图 222

9.2.1 实现概述 222

9.2.2 创建项目 223

9.2.3 设计界面 224

9.2.4 创建并连接输出口和操作 228

9.2.5 实现应用程序逻辑 231

9.2.6 生成应用程序 235

9.3 使用可滚动视图和堆叠视图 236

9.3.1 实现概述 236

9.3.2 创建项目 237

9.3.3 设计界面 237

9.3.4 创建并连接输出口和操作 241

9.3.5 实现应用程序逻辑 241

9.3.6 生成应用程序 242

9.4 进一步探索 242

9.5 小结 243

9.6 问与答 243

9.7 作业 244

9.7.1 测验 244

9.7.2 答案 245

9.7.3 练习 246

第10章 引起用户注意 247

10.1 提醒用户 247

10.1.1 提醒控制器 248

10.1.2 系统声音服务 254

10.2 探索提醒用户的方法 255

10.2.1 实现概述 256

10.2.2 创建项目 256

10.2.3 设计界面 257

10.2.4 创建并连接输出口和操作 258

10.2.5 实现提醒 259

10.2.6 实现操作表 264

10.2.7 实现提醒音和震动 266

10.3 进一步探索 267

10.4 小结 268

10.5 问与答 268

10.6 作业 268

10.6.1 测验 268

10.6.2 答案 270

10.6.3 练习 270

第11章 实现多场景和弹出框 271

11.1 多场景故事板简介 271

11.1.1 术语 272

11.1.2 创建多场景项目 273

11.1.3 添加提供支持的视图控制器子类 275

11.1.4 创建切换 277

11.1.5 配置模态切换 279

11.1.6 配置弹出切换 280

11.1.7 手工控制模态切换 283

11.1.8 使用出口和回退切换 284

11.1.9 以编程方式创建切换 285

11.1.10 弹出切换的独特之处 287

11.1.11 在场景之间传递数据 290

11.2 使用切换 292

11.2.1 实现概述 292

11.2.2 创建项目 292

11.2.3 设计界面 295

11.2.4 创建模态切换 298

11.2.5 回退到初始场景 299

11.2.6 创建并连接输出口和操作 299

11.2.7 实现应用程序逻辑 300

11.2.8 生成应用程序 302

11.3 弹出框、通用应用程序和iPhone 302

11.3.1 配置弹出切换 302

11.3.2 改为通用应用程序 303

11.4 进一步探索 306

11.5 小结 306

11.6 问与答 307

11.7 作业 307

11.7.1 测验 307

11.7.2 答案 309

11.7.3 练习 309

第12章 使用工具栏和选择器做出选择 310

12.1 了解工具栏 310

12.2 探索选择器 313

12.2.1 日期选择器 313

12.2.2 选择器视图 314

12.3 使用日期选择器 318

12.3.1 实现概述 319

12.3.2 创建项目 319

12.3.3 设计界面 321

12.3.4 创建切换 322

12.3.5 创建并连接输出口和操作 322

12.3.6 实现日期计算逻辑 323

12.3.7 实现场景切换逻辑 328

12.3.8 生成应用程序 329

12.4 实现自定义选择器 329

12.4.1 实现概述 329

12.4.2 创建项目 330

12.4.3 设计界面 331

12.4.4 创建切换 333

12.4.5 创建并连接输出口和操作 333

12.4.6 实现自定义选择器视图 334

12.4.7 实现场景切换逻辑 339

12.4.8 生成应用程序 340

12.5 进一步探索 341

12.6 小结 341

12.7 问与答 342

12.8 作业 342

12.8.1 测验 342

12.8.2 答案 344

12.8.3 练习 344

第13章 使用导航控制器和选项卡栏控制器 345

13.1 高级视图控制器 345

13.2 探索导航控制器 347

13.2.1 导航栏、导航项和栏按钮项 347

13.2.2 在故事板中使用导航控制器 348

13.2.3 在导航场景之间共享数据 350

13.3 了解选项卡栏控制器 350

13.3.1 选项卡栏和选项卡栏项 351

13.3.2 在故事板中使用选项卡栏控制器 351

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

13.4 使用导航控制器 355

13.4.1 实现概述 355

13.4.2 创建项目 356

13.4.3 创建显示切换 358

13.4.4 设计界面 359

13.4.5 创建并连接输出口和操作 360

13.4.6 实现应用程序逻辑 361

13.4.7 生成应用程序 362

13.5 使用选项卡栏控制器 362

13.5.1 实现概述 363

13.5.2 创建项目 363

13.5.3 创建选项卡栏关系 365

13.5.4 设计界面 365

13.5.5 创建并连接输出口和操作 367

13.5.6 实现应用程序逻辑 367

13.5.7 生成应用程序 370

13.6 进一步探索 370

13.7 小结 370

13.8 问与答 371

13.9 作业 371

13.9.1 测验 371

13.9.2 答案 373

13.9.3 练习 373

第14章 使用表视图和分割视图控制器导航数据 374

14.1 了解表视图 374

14.1.1 表视图的外观 375

14.1.2 表单元格 375

14.1.3 添加表视图 376

14.2 探索分割视图控制器 381

14.2.1 实现分割视图控制器 382

14.2.2 模板Master-Detail Application 383

14.3 一个简单的表视图应用程序 384

14.3.1 实现概述 384

14.3.2 创建项目 385

14.3.3 设计界面 385

14.3.4 连接输出口delegate和dataSource 387

14.3.5 实现应用程序逻辑 387

14.3.6 生成应用程序 391

14.4 创建基于主-从视图的应用程序 391

14.4.1 实现概述 392

14.4.2 创建项目 392

14.4.3 调整界面 393

14.4.4 实现应用程序数据源 395

14.4.5 实现主视图控制器 398

14.4.6 实现细节视图控制器 401

14.4.7 生成应用程序 403

14.5 进一步探索 403

14.6 小结 403

14.7 问与答 404

14.8 作业 404

14.8.1 测验 404

14.8.2 答案 406

14.8.3 练习 406

第15章 读写应用程序数据 407

15.1 iOS应用程序和数据存储 407

15.2 数据存储方式 409

15.2.1 用户默认设置 410

15.2.2 设置束 411

15.2.3 直接访问文件系统 412

15.3 创建隐式首选项 416

15.3.1 实现概述 417

15.3.2 创建项目 417

15.3.3 创建界面 417

15.3.4 创建并连接输出口和操作 418

15.3.5 实现应用程序逻辑 419

15.3.6 生成应用程序 421

15.4 实现系统设置 422

15.4.1 实现概述 422

15.4.2 创建项目 422

15.4.3 设计界面 423

15.4.4 创建并连接输出口 424

15.4.5 创建设置束 425

15.4.6 实现应用程序逻辑 430

15.4.7 生成应用程序 431

15.5 实现文件系统存储 432

15.5.1 实现概述 432

15.5.2 创建项目 432

15.5.3 设计界面 432

15.5.4 创建并连接输出口和操作 433

15.5.5 实现应用程序逻辑 435

15.6 进一步探索 438

15.7 小结 439

15.8 问与答 439

15.9 作业 439

15.9.1 测验 439

15.9.2 答案 441

15.9.3 练习 441

第16章 创建自适应用户界面 442

16.1 自适应界面 442

16.1.1 启用界面旋转 443

16.1.2 设计可旋转和调整大小的界面 444

16.2 使用自动布局 446

16.2.1 自动布局的语言和工具 446

16.2.2 在约束对象中导航 448

16.2.3 手工定义约束 454

16.2.4 示例1:居中约束 456

16.2.5 示例2:增大控件 458

16.2.6 示例3:统一调整大小 462

16.3 以编程方式定义界面 464

16.3.1 实现概述 464

16.3.2 创建项目 465

16.3.3 界面编程 466

16.3.4 生成应用程序 470

16.4 进一步探索 470

16.5 小结 470

16.6 问与答 470

16.7 作业 471

16.7.1 测验 471

16.7.2 答案 472

16.7.3 练习 472

第17章 使用复杂的触摸和手势 473

17.1 多点触摸手势识别 473

17.2 添加手势识别器 474

17.3 3D Touch预览和打开 475

17.4 使用手势识别器 477

17.4.1 实现概述 478

17.4.2 创建项目 479

17.4.3 设计界面 480

17.4.4 给视图添加手势识别器 481

17.4.5 创建并连接输出口和操作 484

17.4.6 实现应用程序逻辑 486

17.4.7 生成应用程序 494

17.5 实现3DTouch手势 494

17.5.1 实现概述 494

17.5.2 修改ModalEditor 495

17.5.3 修改FlowerDetail 496

17.6 进一步探索 498

17.7 小结 498

17.8 问与答 499

17.9 作业 499

17.9.1 测验 499

17.9.2 答案 500

17.9.3 练习 501

第18章 检测朝向和移动 502

18.1 理解运动硬件 502

18.1.1 加速计 503

18.1.2 陀螺仪 504

18.2 访问朝向和运动数据 505

18.2.1 通过UIDevice请求朝向通知 505

18.2.2 使用Core Motion读取加速度、旋转速度和姿态 506

18.3 检测朝向 508

18.3.1 实现概述 508

18.3.2 创建项目 508

18.3.3 设计界面 508

18.3.4 创建并连接输出口 509

18.3.5 实现应用程序逻辑 509

18.3.6 生成应用程序 511

18.4 检测加速、倾斜和旋转 512

18.4.1 实现概述 512

18.4.2 创建项目 513

18.4.3 设计界面 513

18.4.4 创建并连接输出口和操作 514

18.4.5 实现应用程序逻辑 515

18.4.6 生成应用程序 520

18.5 进一步探索 521

18.6 小结 521

18.7 问与答 521

18.8 作业 522

18.8.1 测验 522

18.8.2 答案 523

18.8.3 练习 524

第19章 使用多媒体 525

19.1 探索多媒体 525

19.1.1 Media Player框架 526

19.1.2 AVFoundation和AVKit框架 529

19.1.3 图像选择器 535

19.1.4 Core Image框架 536

19.2 创建用于练习使用多媒体的应用程序 538

19.2.1 实现概述 538

19.2.2 创建项目 538

19.2.3 设计界面 539

19.2.4 使用容器视图嵌入AVPlayerViewController 540

19.2.5 创建并连接输出口和操作 541

19.2.6 实现视频播放器 543

19.2.7 实现音频录制和播放 545

19.2.8 使用照片库和相机 549

19.2.9 实现Core Image滤镜 552

19.2.10 访问并播放音乐库 554

19.3 进一步探索 559

19.4 小结 559

19.5 问与答 560

19.6 作业 560

19.6.1 测验 560

19.6.2 答案 562

19.6.3 练习 562

第20章 与其他iOS服务交互 563

20.1 集成iOS服务 563

20.1.1 通讯录 563

20.1.2 电子邮件 567

20.1.3 在社交网站上发表信息 569

20.1.4 访问Web浏览器Safari 570

20.1.5 地图功能 571

20.2 使用通讯录、电子邮件、社交网络、Safari和地图 577

20.2.1 实现概述 578

20.2.2 创建项目 578

20.2.3 设计界面 578

20.2.4 创建并连接输出口和操作 580

20.2.5 实现通讯录逻辑 581

20.2.6 实现地图逻辑 583

20.2.7 实现电子邮件逻辑 585

20.2.8 实现社交网络逻辑 587

20.2.9 实现Safari视图控制器 588

20.2.10 将状态栏设置为白色(可选) 589

20.2.11 生成应用程序 589

20.3 进一步探索 590

20.4 小结 590

20.5 问与答 590

20.6 作业 590

20.6.1 测验 590

20.6.2 答案 592

20.6.3 练习 592

第21章 实现定位服务 594

21.1 理解Core Location 594

21.1.1 获取位置 594

21.1.2 获取航向 599

21.2 创建支持定位的应用程序 600

21.2.1 实现概述 600

21.2.2 创建项目 600

21.2.3 设计视图 601

21.2.4 创建并连接输出口 603

21.2.5 实现应用程序逻辑 603

21.2.6 生成应用程序 607

21.3 理解磁性指南针 608

21.3.1 实现概述 608

21.3.2 创建项目 609

21.3.3 修改用户界面 609

21.3.4 创建并连接输出口 610

21.3.5 修改应用程序逻辑 610

21.3.6 生成应用程序 615

21.4 进一步探索 616

21.5 小结 616

21.6 问与答 616

21.7 作业 617

21.7.1 测验 617

21.7.2 答案 618

21.7.3 练习 619

第22章 创建支持后台处理的应用程序 620

22.1 理解iOS后台处理 620

22.1.1 后台处理类型 621

22.1.2 支持后台处理的应用程序的生命周期 625

22.2 禁用后台处理 627

22.3 处理后台挂起 628

22.4 实现本地通知 629

22.4.1 请求用户允许使用通知 629

22.4.2 常用的通知属性 630

22.4.3 创建和调度通知 630

22.5 使用任务特定的后台处理 632

22.5.1 修改应用程序Cupertion以支持在后台播放音频 632

22.5.2 使用声音指示前往库珀蒂诺的方向 633

22.5.3 添加后台模式 636

22.6 完成长时间运行的后台任务 636

22.6.1 实现概述 636

22.6.2 创建项目 637

22.6.3 设计界面 637

22.6.4 创建并连接输出口 638

22.6.5 实现应用程序逻辑 638

22.6.6 启用后台任务处理 639

22.6.7 生成应用程序 641

22.7 执行后台获取 641

22.7.1 实现概述 641

22.7.2 创建项目 641

22.7.3 设计界面 642

22.7.4 创建并连接输出口 642

22.7.5 实现应用程序逻辑 642

22.7.6 添加后台获取模式 644

22.7.7 生成应用程序 644

22.8 添加3DTouch快速操作菜单 644

22.8.1 添加快速操作图标 645

22.8.2 定义快速操作 645

22.8.3 实现快速操作逻辑 646

22.8.4 生成应用程序 647

22.9 进一步探索 647

22.10 小结 648

22.11 问与答 648

22.12 作业 648

22.12.1 测验 648

22.12.2 答案 650

22.12.3 练习 650

第23章 创建通用应用程序 651

23.1 开发通用应用程序 651

23.1.1 将项目配置为通用的 652

23.1.2 通用应用程序开发工具和技巧 654

23.2 尺寸类 654

23.2.1 使用尺寸类工具 656

23.2.2 使用尺寸类创建故事板 661

23.3 进一步探索 665

23.4 小结 666

23.5 问与答 666

23.6 作业 666

23.6.1 测验 666

23.6.2 答案 667

23.6.3 练习 667

第24章 应用程序跟踪、监视和调试 668

24.1 使用NSLog提供即时反馈 668

24.1.1 使用NSLog 669

24.1.2 查看NSLog输出 670

24.2 使用Xcode调试器 671

24.2.1 设置断点及单步执行代码 672

24.2.2 使用调试导航器 680

24.3 进一步探索 684

24.4 小结 684

24.5 问与答 684

24.6 作业 684

24.6.1 测验 684

24.6.2 答案 686

24.6.3 练习 686