《iOS 6应用开发入门经典 原书第4版》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:(美)雷著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2013
  • ISBN:9787115318787
  • 页数:599 页
图书介绍:本书介绍了iOS开发所需的基本知识,包括使用Objective—C和Cocoa Touch等开发工具,读写和显示数据,使用表视图导航结构化数据,创建可旋转和可调整的用户界面,使用地图和定位功能,使用加速计和陀螺仪检测运动和朝向,发布应用程序等主题。

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

1.1欢迎进入iOS平台 1

1.1.1 iOS设备 1

1.1.2显示屏和图形 2

1.1.3应用程序资源约束 3

1.1.4连接性 4

1.1.5输入和反馈 4

1.2成为iOS开发人员 4

1.2.1加入App1e开发人员计划 5

1.2.2安装Xcode 8

1.2.3添加设备支持组件 9

1.3创建并安装开发供应配置文件 10

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

1.3.2配置用于开发的设备 10

1.4运行第一个iOS应用程序 12

1.5开发技术概述 14

1.5.1 Apple开发工具 14

1.5.2 Objective-C 14

1.5.3 CoCoa Touch 15

1.5.4模型-视图-控制器 15

1.6进一步探索 15

1.7小结 15

1.8问与答 15

1.9作业 16

1.9.1测验 16

1.9.2答案 16

1.9.3练习 16

第2章Xcode和iOSs模拟器简介 17

2.1使用Xcode 17

2.1.1创建和管理项目 18

2.1.2编辑和导航代码 24

2.1.3生成应用程序 31

2.1.4管理项目属性 34

2.2使用iOS模拟器 38

2.2.1启动应用程序 39

2.2.2模拟多点触摸事件 41

2.2.3旋转模拟的设备 41

2.2.4模拟其他情况 42

2.3进一步探索 43

2.4小结 43

2.5问与答 44

2.6作业 44

2.6.1 测验 44

2.6.2答案 44

2.6.3练习 44

第3章 探索Apple平台语言Objective-C 45

3.1面向对象编程和Objective-C 45

3.1.1什么是面向对象编程 46

3.1.2面向对象编程术语 47

3.1.3什么是Objective-C 48

3.2探索Objective-C文件结构 48

3.2.1头文件/接口文件 49

3.2.2实现文件 54

3.2.3自动生成的结构 56

3.2.4分类和协议 56

3.3 Objective-C编程基础 57

3.3.1声明变量 57

3.3.2分配和初始化对象 59

3.3.3使用方法及发送消息 60

3.3.4表达式和决策 62

3.4内存管理和自动引用计数(ARC) 65

3.4.1旧方式:保留并释放对象 65

3.4.2新方式:自动引用计数 66

3.5进一步探索 67

3.6小结 67

3.7问与答 67

3.8 作业 68

3.8.1 测验 68

3.8.2答案 68

3.8.3练习 68

第4章Cocoa Touch内幕 69

4.1 Cocoa Touch是什么 69

4.1.1冷静面对大量的功能 70

4.1.2年轻而成熟 70

4.2探索iPhone技术层 71

4.2.1 Cocoa Touch层 71

4.2.2多媒体层 72

4.2.3核心服务层 73

4.2.4核心OS层 74

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

4.4 Cocoa基础 76

4.4.1核心应用程序类 76

4.4.2数据类型类 78

4.4.3界面类 81

4.5使用Xcode探索iOS框架 83

4.5.1 Xcode 文档 84

4.5.2快速帮助 86

4.6进一步探索 88

4.7小结 88

4.8问与答 88

4.9作业 88

4.9.1 测验 88

4.9.2答案 89

4.9.3练习 89

第5章 探索Xcode Interface Builder 90

5.1了解Interface Builder 90

5.1.1 IB采用的方法 91

5.1.2剖析IB故事板 91

5.2创建用户界面 95

5.2.1对象库 96

5.2.2将对象加入到视图中 96

5.2.3使用IB编辑工具 97

5.2.4自动布局系统 100

5.3定制界面外观 102

5.3.1使用属性检查器 102

5.3.2设置辅助功能属性 103

5.3.3测试界面 104

5.4连接到代码 105

5.4.1打开项目 105

5.4.2实现概述 106

5.4.3输出口和操作 107

5.4.4对象身份 112

5.5进一步探索 113

5.6小结 113

5.7问与答 113

5.8作业 114

5.8.1测验 114

5.8.2答案 114

5.8.3练习 114

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

6.1了解设计模式模型-视图-控制器 115

6.1.1制作意大利面条 116

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

6.2 Xcode如何实现MVC 117

6.2.1视图 117

6.2.2视图控制器 117

6.2.3数据模型 119

6.3使用模板Single View Application 120

6.3.1实现概述 120

6.3.2创建项目 120

6.3.3规划属性和连接 124

6.3.4设计界面 126

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

6.3.6实现应用程序逻辑 131

6.3.6生成应用程序 132

6.4进一步探索 133

6.5小结 133

6.6问与答 133

6.7作业 134

6.7.1 测验 134

6.7.2答案 134

6.7.3练习 134

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

7.1基本用户输入和输出 135

7.1.1按钮 135

7.1.2文本框和文本视图 136

7.1.3标签 136

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

7.2.1实现概述 137

7.2.2创建项目 137

7.2.3设计界面 138

7.2.4创建并连接输出口和操作 147

7.2.5实现按钮模板 149

7.2.6隐藏键盘 151

7.2.7实现应用程序逻辑 154

7.2.8生成应用程序 155

7.3进一步探索 155

7.4小结 156

7.5问与答 156

7.6作业 156

7.6.1 测验 156

7.6.2答案 156

7.6.3 练习 157

第8章 处理图像、动画、滑块和 158

步进控件 158

8.1用户输入和输出 158

8.1.1滑块 158

8.1.2步进控件 159

8.1.3图像视图 159

8.2创建并管理图像动画、滑块和 160

步进控件 160

8.2.1实现概述 160

8.2.2创建项目 161

8.2.3设计界面 162

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

8.2.5实现应用程序逻辑 171

8.2.6生成应用程序 175

8.3进一步探索 175

8.4小结 176

8.5问与答 176

8.6作业 176

8.6.1测验 176

8.6.2答案 177

8.6.3练习 177

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

9.1再谈用户输入和输出 178

9.1.1开关 179

9.1.2分段控件 179

9.1.3 Web视图 180

9.1.4可滚动的视图 181

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

9.2.1实现概述 182

9.2.2创建项目 182

9.2.3设计界面 183

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

9.2.5实现应用程序逻辑 191

9.2.6生成应用程序 194

9.3使用可滚动视图 195

9.3.1实现概述 195

9.3.2创建项目 196

9.3.3设计界面 196

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

9.3.5实现应用程序逻辑 200

9.3.6生成应用程序 201

9.4进一步探索 201

9.5小结 202

9.6问与答 202

9.7作业 202

9.7.1 测验 202

9.7.2答案 203

9.7.3练习 203

第10章 引起用户注意 204

10.1提醒用户 204

10.1.1提醒视图 205

10.1.2操作表 207

10.1.3系统声音服务 209

10.2探索提醒用户的方法 211

10.2.1实现概述 211

10.2.2创建项目 211

10.2.3设计界面 213

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

10.2.5实现提醒视图 216

10.2.6实现操作表 221

10.2.7实现提醒音和震动 224

10.3进一步探索 225

10.4小结 226

10.5问与答 226

10.6作业 226

10.6.1 测验 226

10.6.2答案 226

10.6.3练习 227

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

11.1多场景故事板简介 228

11.1.1术语 229

11.1.2创建多场景项目 230

11.1.3创建切换 234

11.1.4手工控制模态切换 237

11.1.5使用出口和回退切换 238

11.1.6以编程方式创建模态场景切换 239

11.1.7在场景之间传递数据 241

11.2理解iPad弹出框 243

11.2.1创建弹出框 244

11.2.2创建弹出切换 244

11.2.3手工显示弹出框 246

11.2.4响应用户关闭弹出框 247

11.2.5以编程方式创建并显示弹出框 249

11.3使用模态切换 251

11.3.1实现概述 251

11.3.2创建项目 251

11.3.4设计界面 255

11.3.5创建模态切换 256

11.3.6回退到初始场景 257

11.3.7创建并连接输出口和操作 257

11.3.8实现应用程序逻辑 258

11.3.9生成应用程序 259

11.4使用弹出框 260

11.4.1创建项目 261

11.4.2设计界面 261

11.4.3创建弹出切换 261

11.4.4创建并连接输出口 262

11.4.5实现应用程序逻辑 262

11.4.6生成应用程序 264

11.5进一步探索 264

11.6小结 265

11.7问与答 265

11.8作业 265

11.8.1 测验 265

11.8.2答案 265

11.8.3练习 266

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

12.1了解工具栏 267

12.1.1栏按钮项 268

12.2探索选择器 270

12.2.1日期选择器 271

12.2.2选择器视图 272

12.3使用日期选择器 276

12.3.1实现概述 276

12.3.2创建项目 277

12.3.3设计界面 278

12.3.4创建切换 280

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

12.3.6实现场景切换逻辑 281

12.3.7实现日期计算逻辑 284

12.3.8生成应用程序 287

12.4实现自定义选择器 288

12.4.1实现概述 288

12.4.2创建项目 288

12.4.3设计界面 290

12.4.4创建切换 292

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

12.4.6实现场景切换逻辑 292

12.4.7实现自定义选择器视图 294

12.4.8生成应用程序 299

12.5进一步探索 300

12.6小结 300

12.7问与答 300

12.8作业 301

12.8.1测验 301

12.8.2答案 301

12.8.3练习 301

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

13.1高级视图控制器 302

13.1.1多场景开发 303

13.2探索导航控制器 304

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

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

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

13.3了解选项卡栏控制器 307

13.3.1选项卡栏和选项卡栏项 308

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

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

13.4使用导航控制器 312

13.4.1实现概述 312

13.4.2创建项目 313

13.4.3创建压入切换 316

13.4.4设计界面 317

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

13.4.6实现应用程序逻辑 319

13.4.7生成应用程序 320

13.5使用选项卡栏控制器 320

13.5.1实现概述 320

13.5.2创建项目 321

13.5.3创建选项卡栏关系 322

13.5.4设计界面 323

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

13.5.6实现应用程序逻辑 325

13.5.7生成应用程序 327

13.6进一步探索 327

13.7小结 328

13.8问与答 328

13.9作业 329

13.9.1 测验 329

13.9.2答案 329

13.9.3练习 329

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

14.1了解表视图 330

14.1.1表视图的外观 331

14.1.2表单元格 332

14.1.3添加表视图 332

14.2探索分割视图控制器(仅适用于iPad) 337

14.2.1实现分割视图控制器 338

14.2.2模板Master-Detail Application 339

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

14.3.1实现概述 340

14.3.2创建项目 340

14.3.3设计界面 341

14.3.4连接输出口delegate和dataSource 342

14.3.5实现应用程序逻辑 343

14.3.6生成应用程序 347

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

14.4.1实现概述 348

14.4.2创建项目 348

14.4.3调整ipad界面 350

14.4.4调整iPhone界面 352

14.4.5实现应用程序数据源 353

14.4.6实现主视图控制器 356

14.4.7实现细节视图控制器 358

14.4.8修复细节视图控制器引用问题 360

14.4.9生成应用程序 360

14.5进一步探索 361

14.6小结 361

14.7问与答 361

14.8作业 362

14.8.1测验 362

14.8.2答案 362

14.8.3练习 362

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

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

15.2数据存储方式 365

15.2.1用户默认设置 366

15.2.2设置束 367

15.2.3直接访问文件系统 369

15.3创建隐式首选项 371

15.3.1实现概述 372

15.3.2创建项目 372

15.3.3创建界面 372

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

15.3.5实现应用程序逻辑 374

15.3.6生成应用程序 377

15.4实现系统设置 378

15.4.1实现概述 378

15.4.2创建项目 378

15.4.3设计界面 379

15.4.4创建并连接输出口 380

15.4.5创建设置束 380

15.4.6实现应用程序逻辑 386

15.4.7生成应用程序 387

15.5实现文件系统存储 388

15.5.1实现概述 388

15.5.2创建项目 388

15.5.3设计界面 388

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

15.5.5实现应用程序逻辑 391

15.6进一步探索 394

15.7小结 395

15.8问与答 395

15.9作业 395

15.9.1 测验 395

15.9.2答案 395

15.9.3练习 396

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

16.1自适应界面 397

16.1.1启用界面旋转 398

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

16.2使用自动布局 400

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

16.2.2示例1:居中约束 405

16.2.3示例2:增大控件 407

16.2.4示例3:统一调整大小及自动布局的怪异行为 410

16.3以编程方式定义界面 413

16.3.1实现概述 413

16.3.2创建项目 414

16.3.3界面编程 414

16.3.4生成应用程序 418

16.4旋转时切换视图 418

16.4.1实现概述 419

16.4.2创建项目 419

16.4.3设计界面 420

16.4.4创建并连接输出口 421

16.4.5实现应用程序逻辑 422

16.4.6生成应用程序 423

16.5进一步探索 423

16.6小结 424

16.7问与答 424

16.8作业 424

16.8.1 测验 424

16.8.2答案 424

16.8.3练习 425

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

17.1多点触摸手势识别 426

17.2添加手势识别器 427

17.3使用手势识别器 429

17.3.1实现概述 429

17.3.2创建项目 430

17.3.3设计界面 431

17.3.4给视图添加手势识别器 432

17.3.5创建并连接输出口和操作 435

17.3.6实现应用程序逻辑 438

17.3.7生成应用程序 444

17.4进一步探索 445

17.5小结 445

17.6问与答 445

17.7作业 445

17.7.1 测验 445

17.7.2答案 446

17.7.3练习 446

第18章 检测朝向和移动 447

18.1理解运动硬件 447

18.1.1加速计 448

18.1.2陀螺仪 449

18.2访问朝向和运动数据 450

18.2.1通过UIDevice请求朝向通知 450

18.2.2使用Core Motion读取加速计和陀螺仪数据 451

18.3检测朝向 453

18.3.1实现概述 453

18.3.2创建项目 453

18.3.3设计界面 453

18.3.4创建并连接输出口 454

18.3.5实现应用程序逻辑 454

18.3.6生成应用程序 456

18.4检测倾斜和旋转 457

18.4.1实现概述 457

18.4.2创建项目 457

18.4.3设计界面 458

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

18.4.5实现应用程序逻辑 460

18.4.6生成应用程序 464

18.5进一步探索 465

18.6小结 465

18.7问与答 466

18.8作业 466

18.8.1 测验 466

18.8.2答案 466

18.8.3练习 466

第19章 使用多媒体 467

19.1探索多媒体 467

19.1.1 Media Player框架 468

19.1.2 AV Foundation框架 473

19.1.3图像选择器 475

19.1.4 Core Image框架 477

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

19.2.1实现概述 479

19.2.2创建项目 479

19.2.3设计界面 481

19.2.4创建并连接输出口和操作 482

19.2.5实现电影播放器 483

19.2.6实现音频录制和播放 486

19.2.7使用照片库和相机 491

19.2.8 实现Core Image滤镜 494

19.2.9访问并播放音乐库 495

19.3进一步探索 500

19.4小结 501

19.5问与答 502

19.6作业 502

19.6.1测验 502

19.6.2答案 502

19.6.3练习 502

第20章 与其他应用程序交互 503

20.1应用程序集成 503

20.1.1地址簿 503

20.1.2电子邮件 507

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

20.1.4地图功能 510

20.2使用地址簿、电子邮件、社交网络和地图 513

20.2.1实现概述 513

20.2.2创建项目 513

20.2.3设计界面 514

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

20.2.5实现地址簿逻辑 516

20.2.6实现地图逻辑 520

20.2.7实现电子邮件逻辑 523

20.2.8实现社交网络逻辑 524

20.2.9生成应用程序 525

20.3进一步探索 526

20.4小结 526

20.5问与答 526

20.6作业 526

20.6.1 测验 526

20.6.2答案 527

20.6.3练习 527

第21章 实现定位服务 528

21.1理解Core Location 528

21.1.1获取位置 528

21.1.2获取航向 532

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

21.2.1实现概述 533

21.2.2创建项目 534

21.2.3设计视图 535

21.2.4创建并连接输出口 537

21.2.5实现应用程序逻辑 537

21.2.6生成应用程序 540

21.3理解磁性指南针 541

21.3.1实现概述 541

21.3.2创建项目 541

21.3.3修改用户界面 542

21.3.4创建并连接输出口 543

21.3.5修改应用程序逻辑 543

21.3.6生成应用程序 547

21.4进一步探索 548

21.5小结 548

21.6问与答 548

21.7作业 549

21.7.1 测验 549

21.7.2答案 549

21.7.3练习 549

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

22.1理解iOS后台处理 550

22.1.1后台处理类型 551

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

22.2禁用后台处理 554

22.3处理后台挂起 554

22.4实现本地通知 555

22.4.1常用的通知属性 556

22.4.2创建和调度通知 556

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

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

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

22.5.3添加后台模式键 562

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

22.6.1实现概述 563

22.6.2创建项目 563

22.6.3设计界面 564

22.6.4创建并连接输出口 564

22.6.5实现应用程序逻辑 564

22.6.6启用后台任务处理 566

22.6.7生成应用程序 567

22.7进一步探索 567

22.8小结 568

22.9问与答 568

22.10作业 568

22.10.1 测验 568

22.10.2答案 568

22.10.3练习 569

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

23.1开发通用应用程序 570

23.1.1理解通用模板 571

23.1.2通用应用程序设置方面的不同 572

23.2创建通用应用程序:方法1 574

23.2.1实现概述 574

23.2.2创建项目 574

23.2.3设计界面 575

23.2.4创建并连接输出口 575

23.2.5实现应用程序逻辑 576

23.2.6生成应用程序 577

23.3创建通用应用程序:方法2 577

23.3.1创建项目 577

23.3.2设计界面 579

23.3.3创建并连接输出口 579

23.3.4实现应用程序逻辑 580

23.3.5生成应用程序 580

23.4使用多个目标 580

23.4.1将iPhone目标转换为iPad目标 581

23.4.2将ipad目标转换为iPhone目标 581

23.5进一步探索 582

23.6小结 582

23.7问与答 583

23.8作业 583

23.8.1 测验 583

23.8.2答案 583

23.8.3练习 583

第24章 应用程序跟踪和调试 584

24.1使用NSLog提供即时反馈 584

24.2使用Xcode调试器 587

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

24.2.2使用调试导航器 596

24.3进一步探索 598

24.4小结 598

24.5问与答 598

24.6作业 598

24.6.1 测验 598

24.6.2答案 599

24.6.3练习 599