《iOS 5基础教程》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:(美)DaveMarkJackNuttingJeffLaMarche著;毛姝雯,漆振,杨越,孙文磊等译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2012
  • ISBN:9787115290991
  • 页数:583 页
图书介绍:本书是一部关于iOS SDK开发的基础教程,内容翔实、语言生动。几位作者结合消费类设备上的常见实例,循序渐进地讲解了适用于iPhone 4S、iPad 2及iPod touch开发的基本流程。

第1章 欢迎来到iOS世界 1

1.1关于本书 1

1.2必要条件 1

1.2.1开发者的选择 3

1.2.2必备知识 4

1.3编写iOS应用程序有何不同 5

1.3.1只有一个应用程序正在运行 5

1.3.2只有一个窗口 5

1.3.3访问受限 5

1.3.4有限的响应时间 6

1.3.5有限的屏幕大小 6

1.3.6有限的系统资源 6

1.3.7不支持垃圾收集 7

1.3.8新功能 7

1.3.9与众不同的方法 7

1.4本书内容 7

1.5本次更新的内容 9

1.6准备开始吧 9

第2章 创建基本项目 10

2.1在Xcode中设置项目 10

2.1.1 Xcode工作区窗口 14

2.1.2深入研究项目 21

2.2 Interface Builder简介 23

2.2.1 nib文件的构成 24

2.2.2库 25

2.2.3在视图中添加标签 26

2.2.4属性修改 29

2.3美化iPhone应用 30

2.4小结 34

第3章 处理基本交互 35

3.1 MVC范型 35

3.2创建项目 36

3.3查看视图控制器 37

3.3.1理解输出口和操作 38

3.3.2清理视图控制器 41

3.3.3设计用户界面 41

3.3.4测试项目 51

3.4理解应用程序委托 51

3.5小结 55

第4章 更丰富的用户界面 56

4.1满是控件的屏幕 56

4.2活动、静态和被动控件 58

4.3创建应用程序 59

4.4实现图像视图和文本字段 59

4.4.1添加图像视图 59

4.4.2调整图像视图 61

4.4.3设置视图属性 62

4.4.4添加文本字段 65

4.4.5创建和连接输出口 70

4.5关闭键盘 71

4.5.1完成输入后关闭键盘 72

4.5.2通过触摸背景关闭键盘 73

4.5.3添加滑块和标签 75

4.5.4连接操作和输出口 77

4.5.5实现操作方法 77

4.6实现开关、按钮和分段控件 78

4.6.1添加两个带标签的开关 79

4.6.2连接开关输出口和操作 80

4.6.3实现开关的操作方法 80

4.6.4添加按钮 81

4.6.5为按钮创建并关联输出口和操作 82

4.6.6实现分段控件的操作方法 82

4.7实现操作表和警报 82

4.7.1遵从操作表委托方法 83

4.7.2显示操作表 83

4.8美化按钮 86

4.8.1 viewDidLoad方法 87

4.8.2控件状态 87

4.8.3可拉伸图像 88

4.9小结 88

第5章 自动旋转和自动调整大小 89

5.1自动旋转机制 89

5.1.1点、像素和Retina显示屏 90

5.1.2自动转屏方法 91

5.2使用自动调整属性处理旋转 91

5.2.1配置应用支持的方向 91

5.2.2指定旋转支持 92

5.2.3使用自动调整属性设计界面 93

5.2.4大小检查器的自动调整属性 94

5.2.5设置按钮的自动调整属性 96

5.3在旋转时重构视图 97

5.3.1创建和连接输出口 98

5.3.2在旋转时移动按钮 99

5.4切换视图 100

5.4.1设计两个视图 101

5.4.2实现交换 102

5.4.3修改输出口集合 104

5.5小结 104

第6章 多视图应用程序 106

6.1多视图应用程序的常见类型 106

6.2多视图应用程序的体系结构 109

6.2.1根控制器 110

6.2.2内容视图剖析 111

6.3构建View Switcher 111

6.3.1创建视图控制器和nib文件 112

6.3.2修改应用程序委托 114

6.3.3修改BIDSwitchViewController.h 116

6.3.4添加视图控制器 116

6.3.5构建包含工具栏的视图 117

6.3.6编写根视图控制器 119

6.3.7实现内容视图 123

6.3.8制作转换动画 126

6.4小结 128

第7章 标签栏与选取器 129

7.1 Pickers应用程序 130

7.2委托和数据源 132

7.3建立标签栏框架 132

7.3.1创建文件 133

7.3.2添加根视图控制器 134

7.3.3创建TabBarController.xib 135

7.3.4连接输出口,然后运行 140

7.4实现日期选取器 141

7.5实现单组件选取器 144

7.5.1声明输出口和操作 144

7.5.2构建视图 145

7.5.3将控制器实现为数据源和委托 146

7.6实现多组件选取器 149

7.6.1声明输出口和操作 150

7.6.2构建视图 150

7.6.3实现控制器 150

7.7实现依赖组件 153

7.8使用自定义选取器创建简单游戏 160

7.8.1编写控制器头文件 160

7.8.2构建视图 160

7.8.3添加图像资源 161

7.8.4实现控制器 161

7.8.5最后的细节 166

7.8.6链接Audio Toolbox框架 170

7.9小结 171

第8章 表视图简介 172

8.1表视图基础 172

8.1.1表视图和表视图单元 173

8.1.2分组表和无格式表 174

8.2实现一个简单的表 175

8.2.1设计视图 175

8.2.2编写控制器 176

8.2.3添加一个图像 179

8.2.4表视图单元样式 181

8.2.5设置缩进级别 182

8.2.6处理行的选择 183

8.2.7更改字体大小和行高 185

8.3定制表视图单元 186

8.3.1向表视图单元添加子视图 186

8.3.2创建UITableViewCell子类 187

8.3.3从nib文件加载UITableViewCell 192

8.4分组分区和索引分区 197

8.4.1构建视图 197

8.4.2导入数据 197

8.4.3实现控制器 198

8.4.4添加索引 201

8.5实现搜索栏 202

8.5.1重新考虑设计 203

8.5.2深层可变副本 203

8.5.3更新控制器头文件 205

8.5.4修改视图 206

8.5.5修改控制器实现 210

8.6小结 221

第9章 导航控制器和表视图 222

9.1导航控制器 222

9.1.1栈的性质 222

9.1.2控制器栈 223

9.2由6个部分组成的分层应用程序:Nav 224

9.2.1子控制器 225

9.2.2 Nav应用程序的骨架 228

9.2.3向项目中添加图形 234

9.2.4第一个子控制器:展示按钮视图 235

9.2.5第二个子控制器:校验表 242

9.2.6第三个子控制器:表行上的控件 246

9.2.7第四个子控制器:可移动的行 252

9.2.8第五个子控制器:可删除的行 257

9.2.9第六个子控制器:可编辑的详细窗格 262

9.2.10其他内容 280

9.3小结 282

第10章storyboard 284

10.1创建一个简单的storyboard 285

10.2动态原型单元 287

10.2.1使用storyboard的动态表内容 288

10.2.2编辑原型单元 289

10.2.3实现表视图数据源 290

10.2.4它会加载吗 292

10.3静态单元 293

10.3.1实现静态单元 293

10.3.2实现表视图数据源 294

10.4大话segue 296

10.4.1创建segue导航 296

10.4.2设计storyboard 297

10.4.3第一个segue 299

10.4.4更为实用的任务列表 299

10.4.5查看任务详情 300

10.4.6设置更多segue 301

10.4.7从列表中传递任务 301

10.4.8处理任务细节 303

10.4.9回传详细信息 304

10.4.10让列表获取详细信息 305

10.4.11小结 306

第11章iPad开发注意事项 307

11.1分割视图和浮动窗口 307

11.1.1创建SplitView项目 309

11.1.2在storyboard中定义结构 310

11.1.3代码定义功能 311

11.2显示总统信息 318

11.3创建浮动窗口 324

11.4小结 329

第12章 应用程序设置和用户默认设置 330

12.1设置束 330

12.2 AppSettings应用程序 331

12.2.1创建项目 333

12.2.2使用设置束 334

12.2.3读取应用程序中的设置 346

12.2.4注册默认值 350

12.2.5更改应用程序中的默认设置 351

12.2.6实现逼真效果 354

12.3小结 357

第13章 保存数据 358

13.1应用程序的沙盒 358

13.1.1获取Documents目录 360

13.1.2获取tmp目录 360

13.2文件保存策略 361

13.2.1单个文件持久性 361

13.2.2多个文件持久性 361

13.3属性列表 361

13.3.1属性列表序列化 362

13.3.2持久性应用程序的第一个版本 363

13.4对模型对象进行归档 368

13.4.1符合NSCoding 368

13.4.2实现NSCopying 369

13.4.3对数据对象进行归档和取消归档 370

13.4.4归档应用程序 371

13.5使用iOS的嵌入式SQLite3 374

13.5.1创建或打开数据库 375

13.5.2绑定变量 376

13.5.3 SQLite3应用程序 377

13.6使用Core Data 383

13.6.1实体和托管对象 385

13.6.2 Core Data应用程序 388

13.7小结 398

第14章iCloud之旅 399

14.1使用UIDocument管理文档存储 399

14.1.1构建TinyPix 400

14.1.2创建BIDTinyPixDocument 401

14.1.3主代码 404

14.1.4初始化storyboard 410

14.1.5创建BIDTinyPixView 412

14.1.6 storyboard设计 416

14.2添加iCloud支持 419

14.2.1创建provisioning profile 420

14.2.2启用iCloud授权 420

14.2.3如何查询 421

14.2.4保存在哪里 423

14.2.5在iCloud上存储首选项 423

14.3小结 424

第15章Grand Central Dispatch、后台处理及其应用 426

15.1 Grand Central Dispatch 426

15.2 S1owWorker简介 427

15.3线程基础知识 430

15.4工作单元 430

15.5 GCD:低级队列 431

15.5.1傻瓜式操作 431

15.5.2改进SlowWorker 432

15.6后台处理 438

15.6.1应用程序生命周期 439

15.6.2状态更改通知 439

15.6.3创建State Lab 441

15.6.4执行状态 442

15.6.5利用执行状态更改 444

15.6.6处理不活动状态 444

15.6.7处理后台状态 449

15.7小结 457

第16章 使用Quartz和OpenGL绘图 458

16.1图形世界的两个视图 458

16.2 Quart 2D绘图方法 459

16.2.1 Quartz 2D的图形上下文 459

16.2.2坐标系 460

16.2.3指定颜色 461

16.2.4在上下文中绘制图像 463

16.2.5绘制形状:多边形、直线和曲线 463

16.2.6 Quartz 2D工具采样器:模式、梯度、虚线模式 464

16.3 QuartzFun应用程序 465

16.3.1构建QuartzFun应用程序 465

16.3.2添加Quartz Drawing代码 474

16.3.3优化QuartzFun应用程序 478

16.4 GLFun应用程序 481

16.4.1构建GLFun应用程序 482

16.4.2创建BIDGLFunView 482

16.4.3更新BIDViewController 489

16.4.4更新nib 490

16.4.5完成GLFun 490

16.5小结 490

第17章 轻击、触摸和手势 491

17.1多点触控术语 491

17.2响应者链 492

17.2.1响应事件 492

17.2.2转发事件:保持响应者链的活动状态 493

17.3多点触控体系结构 494

17.4 4个手势通知方法 494

17.5检测触摸 495

17.6检测轻扫 498

17.6.1使用自动手势识别 502

17.6.2实现多个轻扫动作 503

17.7检测多次轻击 505

17.8检测捏合操作 509

17.9创建和使用自定义手势 512

17.9.1 CheckPlease应用程序 512

17.9.2 CheckPlease触摸方法 514

17.10小结 516

第18章Core Location定位功能 517

18.1位置管理器 517

18.1.1设置所需的精度 518

18.1.2设置距离筛选器 518

18.1.3启动位置管理器 519

18.1.4更明智地使用位置管理器 519

18.2位置管理器委托 519

18.2.1获取位置更新 519

18.2.2使用CLLocation获取纬度和经度 519

18.2.3错误通知 521

18.3尝试使用Core Location 522

18.3.1更新位置管理器 525

18.3.2确定移动距离 526

18.4小结 527

第19章 陀螺仪和加速计 528

19.1加速计物理学 528

19.2不要忘记旋转 529

19.3 Core Motion和动作管理器 529

19.3.1基于事件的动作 530

19.3.2主动动作访问 535

19.3.3加速计结果 537

19.4检测摇动 537

19.4.1 Baked-In摇动 538

19.4.2摇动与击碎 539

19.5将加速计用做方向控制器 544

19.5.1滚弹珠程序 545

19.5.2编写Ball View 547

19.5.3计算小球运动 549

19.6小结 552

第20章iPhone照相机和照片库 553

20.1使用图像选取器和UIImagePickerController 553

20.2实现图像选取器控制器委托 555

20.3实际测试照相机和库 556

20.3.1设计界面 557

20.3.2实现照相机视图控制器 558

20.4小结 562

第21章 应用程序本地化 563

21.1本地化体系结构 563

21.2字符串文件 564

21.2.1字符串文件里面是什么 565

21.2.2本地化的字符串宏 565

21.3现实中的iOS:本地化应用程序 566

21.3.1创建LocalizeMe 567

21.3.2 测试LocalizeMe 569

21.3.3本地化nib文件 570

21.3.4本地化图像 573

21.3.5生成和本地化字符串文件 575

21.3.6本地化应用程序显示名称 577

21.4小结 578

第22章 未来之路 579

22.1苹果公司的文档 579

22.2邮件列表 579

22.3论坛 580

22.4网站 580

22.5博客 581

22.6会议 582

22.7作者 582

22.8再会 583