《iOS 5应用开发入门经典》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:(美)雷(RayJ.)著;袁国忠译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2012
  • ISBN:9787115282873
  • 页数:572 页
图书介绍:本书介绍了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连接性 3

1.1.5输入和反馈 4

1.2成为iOS开发人员 4

1.2.1加入Apple开发人员计划 4

1.2.2安装iOS开发工具 7

1.3创建开发供应配置文件 8

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

1.3.2配置用于测试的设备 9

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

1.5开发技术概述 13

1.5.1 Apple开发套件 13

1.5.2 Objective-C 14

1.5.3 CoCoaTouch 14

1.5.4模型-视图-控制器 14

1.6进一步探索 14

1.7小结 14

1.8问与答 15

1.9作业 15

1.9.1测验 15

1.9.2答案 15

1.9.3练习 16

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

2.1使用Xcode 17

2.1.1创建和管理项目 18

2.1.2删除文件和资源 23

2.1.3编辑和导航代码 24

2.1.4生成应用程序 30

2.1.5管理项目属性 33

2.2使用iOS模拟器 37

2.2.1在模拟器中启动应用程序 38

2.2.2模拟多点触摸事件 39

2.2.3旋转模拟的设备 40

2.2.4模拟其他情况 40

2.3进一步探索 42

2.4小结 42

2.5问与答 42

2.6作业 42

2.6.1 测验 42

2.6.2答案 43

2.6.3练习 43

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

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

3.1.1什么是面向对象编程 45

3.1.2面向对象编程术语 46

3.1.3什么是Objective-C 47

3.2探索Objective-C文件结构 47

3.2.1头文件/接口文件 48

3.2.2实现文件 52

3.2.3自动生成的结构 54

3.3 Objective-C编程基础 54

3.3.1声明变量 55

3.3.2分配和初始化对象 56

3.3.3使用方法及发送消息 57

3.3.4表达式和决策 59

3.4内存管理和ARC 63

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

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

3.5进一步探索 64

3.6小结 65

3.7问与答 65

3.8作业 66

3.8.1测验 66

3.8.2答案 66

3.8.3练习 66

第4章Cocoa Touch内幕 67

4.1 Cocoa Touch是什么 67

4.1.1冷静面对大量的功能 68

4.1.2年轻而成熟 68

4.2探索iPhone技术层 69

4.2.1 Cocoa Touch层 69

4.2.2多媒体层 70

4.2.3核心服务层 71

4.2.4核心OS层 72

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

4.4 Cocoa基础 74

4.4.1核心应用程序类 74

4.4.2数据类型类 76

4.4.3界面类 78

4.5使用Xcode探索iOS框架 80

4.5.1 Xcode文档 81

4.5.2快速帮助 82

4.6进一步探索 84

4.7小结 85

4.8问与答 85

4.9作业 85

4.9.1测验 85

4.9.2答案 85

4.9.3练习 86

第5章 探索Xcode Interface Builder 87

5.1了解Interface Builder 87

5.1.1 Interface Builder采用的方法 88

5.1.2剖析Interface Builder故事板 88

5.2创建用户界面 92

5.2.1对象库 92

5.2.2将对象加入到视图中 93

5.2.3使用IB布局工具 94

5.3定制界面外观 96

5.3.1使用属性检查器 97

5.3.2设置辅助功能属性 98

5.3.3测试界面 99

5.4连接到代码 100

5.4.1打开项目 100

5.4.2实现概述 101

5.4.3输出口和操作 101

5.4.4对象身份 106

5.5进一步探索 106

5.6小结 107

5.7问与答 107

5.8作业 108

5.8.1测验 108

5.8.2答案 108

5.8.3练习 108

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

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

6.1.1制作意大利面条 110

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

6.2 Xcode如何实现MVC 111

6.2.1视图 111

6.2.2视图控制器 111

6.2.3数据模型 113

6.3使用模板Single View Application 114

6.3.1实现概述 114

6.3.2创建项目 115

6.3.3规划变量和连接 118

6.3.4设计界面 121

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

6.3.6实现应用程序逻辑 126

6.3.6生成应用程序 127

6.4进一步探索 127

6.5小结 127

6.6问与答 128

6.7作业 128

6.7.1测验 128

6.7.2答案 128

6.7.3练习 129

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

7.1基本用户输入和输出 130

7.1.1按钮 130

7.1.2文本框和文本视图 131

7.1.3标签 131

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

7.2.1实现概述 132

7.2.2创建项目 132

7.2.3设计界面 133

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

7.2.5实现按钮模板 143

7.2.6 隐藏键盘 145

7.2.7实现应用程序逻辑 148

7.2.8生成应用程序 149

7.3进一步探索 150

7.4小结 150

7.5问与答 150

7.6作业 151

7.6.1测验 151

7.6.2答案 151

7.6.3练习 151

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

8.1用户输入和输出 152

8.1.1滑块 152

8.1.2步进控件 153

8.1.3图像视图 153

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

8.2.1实现概述 154

8.2.2创建项目 154

8.2.3设计界面 155

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

8.2.5实现应用程序逻辑 163

8.2.6生成应用程序 168

8.3进一步探索 169

8.4小结 169

8.5问与答 169

8.6作业 170

8.6.1测验 170

8.6.2答案 170

8.6.3练习 170

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

9.1再谈用户输入和输出 171

9.1.1开关 171

9.1.2分段控件 172

9.1.3 Web视图 173

9.1.4可滚动的视图 174

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

9.2.1实现概述 175

9.2.2创建项目 175

9.2.3设计界面 176

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

9.2.5实现应用程序逻辑 184

9.2.6生成应用程序 187

9.3使用可滚动视图 187

9.3.1实现概述 188

9.3.2创建项目 188

9.3.3设计界面 189

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

9.3.5实现应用程序逻辑 191

9.3.6生成应用程序 192

9.4进一步探索 192

9.5小结 192

9.6问与答 193

9.7作业 193

9.7.1测验 193

9.7.2答案 193

9.7.3练习 193

第10章 引起用户注意 194

10.1提醒用户 194

10.1.1提醒视图 195

10.1.2操作表 197

10.1.3系统声音服务 199

10.2探索提醒用户的方法 201

10.2.1实现概述 201

10.2.2创建项目 201

10.2.3设计界面 203

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

10.2.5实现提醒视图 205

10.2.6实现操作表 211

10.2.7实现提醒音和震动 213

10.3进一步探索 215

10.4小结 215

10.5问与答 216

10.6作业 216

10.6.1测验 216

10.6.2答案 216

10.6.3练习 216

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

11.1多场景故事板简介 217

11.1.1术语 218

11.1.2创建多场景项目 219

11.1.3创建切换 223

11.1.4手工控制模态切换 225

11.1.5以编程方式创建模态场景切换 226

11.1.6在场景之间传递数据 228

11.2理解iPad弹出框 230

11.2.1创建弹出框 231

11.2.2创建弹出切换 231

11.2.3手工显示弹出框 233

11.2.4响应用户关闭弹出框 233

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

11.3使用模态切换 238

11.3.1实现概述 238

11.3.2创建项目 238

11.3.4设计界面 240

11.3.5创建模态切换 241

11.3.6创建并连接输出口和操作 242

11.3.7实现应用程序逻辑 243

11.3.8生成应用程序 244

11.4使用弹出框 245

11.4.1创建项目 245

11.4.2设计界面 245

11.4.3创建弹出切换 246

11.4.4创建并连接输出口 247

11.4.5实现应用程序逻辑 247

11.4.6生成应用程序 249

11.5进一步探索 249

11.6小结 249

11.7问与答 249

11.8作业 250

11.8.1测验 250

11.8.2答案 250

11.8.3练习 250

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

12.1了解工具栏 251

12.2探索选择器 254

12.2.1日期选择器 255

12.2.2选择器视图 256

12.3使用日期选择器 260

12.3.1实现概述 261

12.3.2创建项目 261

12.3.3设计界面 262

12.3.4创建切换 263

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

12.3.6实现场景切换逻辑 265

12.3.7实现日期计算逻辑 268

12.3.8生成应用程序 271

12.4实现自定义选择器 272

12.4.1实现概述 272

12.4.2创建项目 272

12.4.3设计界面 274

12.4.4创建切换 275

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

12.4.6实现场景切换逻辑 276

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

12.4.8生成应用程序 284

12.5进一步探索 284

12.6小结 285

12.7问与答 285

12.8作业 286

12.8.1测验 286

12.8.2答案 286

12.8.3练习 286

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

13.1高级视图控制器 287

13.2探索导航控制器 289

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

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

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

13.3了解选项卡栏控制器 293

13.3.1选项卡栏和选项卡栏项 293

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

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

13.4使用导航控制器 297

13.4.1实现概述 297

13.4.2创建项目 297

13.4.3创建压入切换 299

13.4.4设计界面 300

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

13.4.6实现应用程序逻辑 302

13.4.7生成应用程序 303

13.5使用选项卡栏控制器 303

13.5.1实现概述 304

13.5.2创建项目 304

13.5.3创建选项卡栏关系 305

13.5.4设计界面 306

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

13.5.6实现应用程序逻辑 308

13.5.7生成应用程序 310

13.6进一步探索 310

13.7小结 311

13.8问与答 311

13.9作业 312

13.9.1测验 312

13.9.2答案 312

13.9.3练习 312

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

14.1了解表视图 313

14.1.1表视图的外观 314

14.1.2表单元格 314

14.1.3添加表视图 315

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

14.2.1实现分割视图控制器 321

14.2.2模板Master-Detail Application 322

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

14.3.1实现概述 323

14.3.2创建项目 323

14.3.3设计界面 324

14.3.4连接输出口delegate和dataSource 325

14.3.5实现应用程序逻辑 326

14.3.6生成应用程序 331

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

14.4.1实现概述 331

14.4.2创建项目 332

14.4.3调整iPad界面 333

14.4.4调整iPhone界面 335

14.4.5实现应用程序数据源 336

14.4.6实现主视图控制器 339

14.4.7实现细节视图控制器 341

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

14.4.9生成应用程序 343

14.5进一步探索 343

14.6小结 344

14.7问与答 344

14.8作业 344

14.8.1测验 344

14.8.2答案 345

14.8.3练习 345

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

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

15.2数据存储方式 348

15.2.1用户默认设置 348

15.2.2设置束 349

15.2.3直接访问文件系统 351

15.3创建隐式首选项 354

15.3.1实现概述 354

15.3.2创建项目 354

15.3.3创建界面 355

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

15.3.5实现应用程序逻辑 357

15.3.6生成应用程序 359

15.4实现系统设置 360

15.4.1实现概述 360

15.4.2创建项目 360

15.4.3设计界面 361

15.4.4创建并连接输出口 362

15.4.5创建设置束 362

15.4.6实现应用程序逻辑 368

15.4.7生成应用程序 369

15.5实现文件系统存储 369

15.5.1实现概述 370

15.5.2创建项目 370

15.5.3设计界面 370

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

15.5.5实现应用程序逻辑 373

15.6进一步探索 376

15.7小结 376

15.8问与答 377

15.9作业 377

15.9.1测验 377

15.9.2答案 377

15.9.3练习 377

第16章 创建可旋转及调整大小的用户界面 379

16.1可旋转和调整大小的界面 379

16.1.1启用界面旋转 380

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

16.2使用Interface Builder创建可旋转和调整大小的界面 382

16.2.1实现概述 383

16.2.2创建项目 383

16.2.3设计灵活的界面 383

16.2.4生成应用程序 386

16.3旋转时调整控件的框架 387

16.3.1实现概述 387

16.3.2创建项目 387

16.3.3设计界面 387

16.3.4创建并连接输出口 390

16.3.5实现应用程序逻辑 391

16.3.6生成应用程序 392

16.4旋转时切换视图 392

16.4.1实现概述 392

16.4.2创建项目 393

16.4.3设计界面 393

16.4.4创建并连接输出口 395

16.4.5实现应用程序逻辑 396

16.4.6生成应用程序 397

16.5进一步探索 398

16.6小结 398

16.7问与答 398

16.8作业 398

16.8.1测验 398

16.8.2答案 399

16.8.3练习 399

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

17.1多点触摸手势识别 400

17.2使用手势识别器 403

17.2.1实现概述 403

17.2.2创建项目 403

17.2.3设计界面 405

17.2.4给视图添加手势识别器 406

17.2.5创建并连接输出口和操作 409

17.2.6实现应用程序逻辑 411

17.2.7生成应用程序 417

17.3进一步探索 417

17.4小结 417

17.5问与答 418

17.6作业 418

17.6.1测验 418

17.6.2答案 418

17.6.3练习 418

第18章 检测朝向和移动 419

18.1理解运动硬件 419

18.1.1加速计 420

18.1.2陀螺仪 420

18.2访问朝向和运动数据 422

18.2.1通过UIDevice请求朝向通知 422

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

18.3检测朝向 424

18.3.1实现概述 424

18.3.2创建项目 424

18.3.3设计界面 425

18.3.4创建并连接输出口 425

18.3.5实现应用程序逻辑 426

18.3.6生成应用程序 427

18.4检测倾斜和旋转 428

18.4.1实现概述 428

18.4.2创建项目 428

18.4.3设计界面 429

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

18.4.5实现应用程序逻辑 431

18.4.6生成应用程序 436

18.5进一步探索 437

18.6小结 437

18.7作业 438

18.7.1测验 438

18.7.2答案 438

18.7.3练习 438

第19章 使用多媒体 439

19.1探索多媒体 439

19.1.1 Media Player框架 440

19.1.2 AV Foundation框架 445

19.1.3图像选择器 447

19.1.4 Core Image框架 450

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

19.2.1实现概述 451

19.2.2创建项目 451

19.2.3设计界面 453

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

19.2.5实现电影播放器 455

19.2.6实现音频录制和播放 458

19.2.7使用照片库和相机 464

19.2.8实现Core Image滤镜 466

19.2.9访问并播放音乐库 468

19.3进一步探索 474

19.4小结 475

19.5问与答 475

19.6作业 475

19.6.1测验 475

19.6.2答案 476

19.6.3练习 476

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

20.1应用程序集成 477

20.1.1地址簿 477

20.1.2电子邮件 481

20.1.3使用Twitter发送推特信息 483

20.1.4地图功能 484

20.2使用地址簿、电子邮件、 Twitter和地图 487

20.2.1实现概述 487

20.2.2创建项目 487

20.2.3设计界面 488

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

20.2.5实现地址簿逻辑 490

20.2.6实现地图逻辑 494

20.2.7实现电子邮件逻辑 497

20.2.8实现Twitter逻辑 499

20.2.9生成应用程序 500

20.3进一步探索 500

20.4小结 501

20.5问与答 501

20.6作业 501

20.6.1测验 501

20.6.2答案 501

20.6.3练习 501

第21章 实现定位服务 502

21.1理解Core Location 502

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

21.2.1实现概述 508

21.2.2创建项目 508

21.2.3设计视图 509

21.2.4创建并连接输出口 510

21.2.5实现应用程序逻辑 511

21.2.6生成应用程序 514

21.3理解磁性指南针 515

21.3.1实现概述 515

21.3.2创建项目 515

21.3.3修改用户界面 516

21.3.4创建并连接输出口 517

21.3.5修改应用程序逻辑 517

21.3.6生成应用程序 521

21.4进一步探索 522

21.5小结 522

21.6问与答 522

21.7作业 523

21.7.1测验 523

21.7.2答案 523

21.7.3练习 523

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

22.1理解iOS后台处理 524

22.1.1后台处理类型 525

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

22.2禁用后台处理 528

22.3处理后台挂起 528

22.4实现本地通知 529

22.4.1常用的通知属性 530

22.4.2创建和调度通知 530

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

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

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

22.5.3添加后台模式键 537

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

22.6.1实现概述 538

22.6.2创建项目 538

22.6.3设计界面 538

22.6.4创建并连接输出口 539

22.6.5实现应用程序逻辑 539

22.6.6启用后台任务处理 541

22.6.7生成应用程序 542

22.7进一步探索 542

22.8小结 543

22.9问与答 543

22.10作业 543

22.10.1测验 543

22.10.2答案 543

22.10.3练习 543

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

23.1开发通用应用程序 544

23.1.1理解通用模板 545

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

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

23.2.1实现概述 548

23.2.2创建项目 548

23.2.3设计界面 548

23.2.4创建并连接输出口 549

23.2.5实现应用程序逻辑 550

23.2.6生成应用程序 550

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

23.3.1创建项目 551

23.3.2设计界面 553

23.3.3创建并连接输出口 553

23.3.4实现应用程序逻辑 554

23.3.5生成应用程序 554

23.4使用多个目标 554

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

23.4.2将iPad目标转换为iPhone目标 555

23.5进一步探索 556

23.6小结 556

23.7问与答 557

23.8作业 557

23.8.1测验 557

23.8.2答案 557

23.8.3练习 557

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

24.1使用NSLog提供即时反馈 558

24.2使用Xcode调试器 560

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

24.2.2使用调试导航器 570

24.3进一步探索 571

24.4小结 571

24.5问与答 572

24.6作业 572

24.6.1测验 572

24.6.2答案 572

24.6.3练习 572