《iOS编程(第4版)》书籍《iOS编程(第4版)》

《iOS编程(第4版)》书籍《iOS编程(第4版)》

作者:《iOS编程(第4版)》书籍

出版社:华中科技大学出版社

出版年:2015-1-1

评分:9.0

ISBN:9787560997902

所属分类:网络科技

书刊介绍

内容简介

《iOS编程》荣获Jolt生产力大奖。第4版更新了iOS7和Xcode5的内容。全书涵盖了开发iOS应用的方方面面。从Objective-C基础知识到新增加的语言特性;从AppKit库到常见的Cocoa设计模式;从Xcode技巧到Instruments等。如果读者刚 接触iOS编程,阅读本书前两章可以快速入门。如果读者已经有iOS编程经验,阅读本书可以拾遗补缺。

作品目录

前言 xiii

本书适合哪些读者 xiii

第4版有哪些更新 xiii

教学理念 xiv

如何使用本书 xv

本书是如何组织的 xv

代码风格 xvii

版式说明 xvii

开发所需的硬件与软件 xviii

第1章 第一个简单的iOS应用 1

1.1 创建Xcode项目 2

1.2 模型-视图-控制器 4

1.3 设计Quiz 5

1.4 创建视图控制器 6

1.5 创建界面 8

1.6 创建关联 14

1.7 创建模型对象 18

1.8 大功告成 21

1.7 在模拟器上运行应用 22

1.9 安装应用 23

1.9 应用图标 25

1.10 启动图片 27

第2章 Objective-C 29

2.1 对象 29

2.2 使用对象 30

2.3 编写命令行工具RandomItems 33

2.4 创建Objective-C类的子类 38

2.5 深入学习NSArray与NSMutableArray 58

2.6 异常与未知选择器 60

2.7 练习 62

2.8 初级练习:查找问题 62

2.9 中级练习:另一个初始化方法 62

2.10 高级练习:另一个类 63

2.11 关于深入学习部分 63

2.12 深入学习:如何为类命名 63

2.13 深入学习:#import和@import 64

第3章 通过ARC管理内存 65

3.1 栈 65

3.2 堆 66

3.3 指针变量与对象所有权 66

3.4 强引用与弱引用 70

3.5 属性 75

3.6 深入学习:属性合成 81

3.7 深入学习:Autorelease池与ARC历史 83

第4章 视图与视图层次结构 85

4.1 视图基础 86

4.2 视图层次结构 86

4.3 创建UIView子类 88

4.4 在drawRect:方法中自定义绘图 94

4.5 关于开发者文档 105

4.6 初级练习:绘制图像 106

4.7 深入学习:Core Graphics 106

4.8 高级练习:阴影和渐变 108

第5章 视图:重绘与UIScrollView 111

5.1 运行循环和重绘视图 112

5.2 类扩展 114

5.3 使用UIScrollView 115

第6章 视图控制器 119

6.1 创建UIViewController子类 120

6.2 另一个视图控制器 123

6.3 UITabBarController 130

6.4 视图控制器的初始化方法 134

6.5 添加本地通知 135

6.6 加载和显示视图 136

6.7 与视图控制器及其视图进行交互 138

6.8 初级练习:增加一个标签项 139

6.9 中级练习:控制逻辑 139

6.10 深入学习:键值编码 139

6.11 深入学习:Retina显示屏 140

第7章 委托与文本输入 143

7.1 文本框(UITextField) 143

7.2 委托 146

7.3 协议 148

7.4 向屏幕中添加UILabel对象 150

7.5 运动效果 152

7.6 使用调试器 153

7.7 深入学习:main()与UIApplication 157

7.8 中级练习:捏合-缩放 157

第8章 UITableView与UITableViewController 159

8.1 编写Homepwner应用 159

8.2 UITableViewController 160

8.3 UITableView数据源 164

8.4 UITableViewCell对象 170

8.5 代码片段库 175

8.6 初级练习:表格段 178

8.7 中级练习:固定行 178

8.8 高级练习:修改UITableView对象的外观 178

第9章 编辑UITableView 179

9.1 编辑模式 179

9.2 增加行 185

9.3 删除行 187

9.4 移动行 188

9.5 初级练习:更改“删除”按钮的标题 190

9.6 中级练习:禁止移动某个表格行 190

9.7 高级练习:彻底禁止移动某个表格行 190

第10章 UINavigationController 191

10.1 UINavigationController对象 192

10.2 额外的视图控制器 196

10.3 UINavigationController的导航功能 201

10.4 UINavigationBar 205

10.5 初级练习:显示数字键盘 210

10.6 中级练习:关闭数字键盘 210

10.7 高级练习:压入更多视图控制器 210

第11章 相机 211

11.1 通过UIImageView对象显示照片 212

11.2 通过UIImagePickerController拍摄照片 216

11.3 创建BNRImageStore 220

11.4 NSDictionary 222

11.5 创建并使用键 225

11.6 使用BNRImageStore 227

11.7 关闭键盘 228

11.8 初级练习:编辑照片 230

11.9 中级练习:删除照片 230

11.10 高级练习:Camera Overlay 230

11.11 深入学习:导航实现文件 230

11.12 深入学习:摄像 233

第12章 触摸事件与UIResponder 235

12.1 触摸事件 235

12.2 创建TouchTracker应用 237

12.3 实现BNRDrawView,完成绘图功能 239

12.4 处理触摸事件并创建线条对象 240

12.5 初级练习:保存与读取 245

12.6 中级练习:颜色 245

12.7 高级练习:圆圈 246

12.8 深入学习:响应对象链 246

12.9 深入学习:UIControl 247

第13章 UIGestureRecognizer与UIMenuController 249

13.1 UIGestureRecognizer子类 250

13.2 用UITapGestureRecognizer对象识别“按下”手势 250

13.3 同时添加多种触摸手势 252

13.4 UIMenuController 254

13.5 UILongPressGestureRecognizer 256

13.6 UIPanGestureRecognizer以及同时识别多个手势 257

13.7 深入学习:UIMenuController与UIResponderStandardEditActions 260

13.8 深入学习:再谈UIGestureRecognizer 261

13.9 中级练习:修正错误 262

13.10 高级练习:速度与宽度 262

13.11 高级练习:颜色 262

第14章 调试工具 263

14.1 仪表 263

14.2 Instruments 265

14.3 静态分析器 275

14.4 项目、目标和构建设置 277

第15章 自动布局入门 283

15.1 通用化Homepwner 283

15.2 自动布局系统 285

15.3 在Interface Builder中添加约束 289

15.4 调试约束问题 298

15.5 初级练习:打造完美界面 306

15.6 中级练习:通用化Quiz 307

15.7 深入学习:使用_autolayoutTrace方法调试约束问题 307

15.8 深入学习:使用多个XIB文件 308

第16章 在代码中使用自动布局 309

16.1 视觉化格式语言 310

16.2 创建约束 311

16.3 添加约束 312

16.4 固有内容大小 315

16.5 另一种添加方式 316

16.6 深入学习:NSAutoresizingMaskLayoutConstraint 318

第17章 自动转屏,UIPopoverController与模态视图控制器 321

17.1 自动转屏 321

17.2 自动转屏通告机制 324

17.3 UIPopoverController 326

17.4 更多的模态视图控制器 329

17.5 线程安全的单例 337

17.6 初级练习:为另一个类添加线程安全的单例 339

17.7 高级练习:UIPopoverController对象的外观 339

17.8 深入学习:位掩码 339

17.9 深入学习:视图控制器之间的关系 340

第18章 保存、读取与应用状态 345

18.1 固化 345

18.2 应用沙盒 348

18.3 NSKeyedArchiver与NSKeyedUnarchiver 350

18.4 应用状态与状态切换 353

18.5 通过NSData将数据写入文件 356

18.6 NSNotificationCenter和内存过低警告 358

18.7 模型-视图-控制器-存储设计模式 361

18.8 初级练习:PNG 361

18.9 深入学习:应用的状态切换 362

18.10 深入学习:文件系统的读取和写入 363

18.11 深入学习:应用程序包 366

第19章 创建UITableViewCell子类 369

19.1 创建BNRItemCell 369

19.2 处理图片 377

19.3 由UITableViewCell对象转发动作消息 380

19.4 捕获变量 385

19.5 初级练习:设置颜色 386

19.6 高级练习:缩放 387

19.7 深入练习:UICollectionView 387

第20章 动态字体 389

20.1 使用用户首选字体 390

20.2 响应用户首选字体的改变 392

20.3 修改自动布局约束 393

20.4 确定用户首选字体大小 395

20.5 修改BNRItemCell 397

第21章 Web服务与UIWebView 403

21.1 Web服务 404

21.2 UIWebView 414

21.3 认证信息 416

25.4 中级练习:加强UIWebView 418

21.5 高级练习:课程预告 418

21.6 深入学习:HTTP请求主体 419

第23章 Core Data 431

23.1 对象-关系映射 431

23.2 用Core Data重写BNRItemStore的数据保存功能 432

23.3 再谈SQL 450

23.4 Faults 451

23.5 各种存取机制的优缺点 453

23.6 初级练习:Asset的iPad界面 454

23.7 中级练习:增加BNRAssetType对象 454

23.8 高级练习:显示某种类型的BNRItem对象 454

第24章 状态恢复 455

24.1 状态恢复的工作原理 455

24.2 启用状态恢复 456

24.3 恢复标识和恢复类 457

24.4 状态恢复与应用生命周期 459

24.5 恢复视图控制器 461

24.6 编码状态数据 464

24.7 保存视图状态 465

24.8 中级练习:为另一个应用启用状态恢复 467

24.9 深入学习:设置快照 467

第25章 本地化 469

25.1 通过NSNumberFormatter实施国际化 470

25.2 资源的本地化 473

25.3 NSLocalizedString()与字符串对照表 477

25.4 初级练习:再添加一套本地化资源 480

25.5 深入学习:NSBundle在国际化过程中的作用 480

25.6 深入学习:不通过基础国际化对XIB文件实施本地化 481

第26章 NSUserDefaults 483

26.1 NSUserDefaults 483

26.2 设置束 487

第27章 控制动画 491

27.1 基础动画 491

27.2 关键帧动画 494

27.3 在动画完成后执行特定的代码 496

27.4 弹簧动画 497

27.5 中级练习:提升Quiz的用户体验 498

第28章 UIStoryboard 499

28.1 创建Storyboard文件 499

28.2 Storyboard文件中的UITableViewController 503

28.3 Segue 506

28.4 改变颜色 512

28.5 传递数据 513

28.6 Storyboards的优缺点 520

28.7 深入学习:状态恢复 521

第29章 后记 523

29.1 接下来做什么 523

29.2 结束语 524

第22章 UISplitViewController 421

22.1 在Nerdfeed中使用UISplitViewController 422

22.2 在竖排模式下显示主视图控制器 425

22.3 将Nerdfeed改为通用应用 428

索引 525

相关推荐

微信二维码