《iOS 6应用开发实战》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:刘铭,朱舸著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2013
  • ISBN:9787111419143
  • 页数:394 页
图书介绍:本书以一个经典的综合案例贯穿全书,以迭代的方式完整地重现了整个案例的开发过程,极具操作性,配合前后的基础理论和高级技巧,读者在实践的同时还能将理论知识融会贯通。全书主要内容一共分为三大部分:准备篇简明扼要地讲解了iPhone开发的基础知识,并为第二部分实战篇的内容打下了基础;实战篇以迭代的方式完整的重现了“记录生活”这个案例的及实现的整个过程,极具实战性,更重要的是展现了iPhone应用开发的流程和思想;提高篇讲解了内存管理、界面重绘、多线程等高级内容,使全书的内容得到了升华。

第1章 开发前的准备 1

1.1 iOS的历史 2

1.2 iOS 5和iOS 6的新特性 3

1.2.1 iCloud云服务 3

1.2.2 LLVM 3.0编译器 3

1.2.3 自动引用计数器 3

1.2.4故事板 4

1.2.5整合Twitter框架 4

1.2.6 iOS 5的其他特性 4

1.2.7 iOS 6的新特性 6

1.3 iOS设备的相关介绍 7

1.3.1各种iOS设备 7

1.3.2 iOS设备的显示分辨率 8

1.3.3 iOS应用程序与硬件的关系 9

1.3.4 iPhone的网络连接 9

1.3.5 iPhone的输入与反馈机制 10

1.4成为一名iOS开发者 10

1.4.1 注册成为Apple Developer 11

1.4.2 加入iOS开发者计划 13

1.5下载并安装iOS开发工具 14

1.6本书实战项目简介 16

第2章认识Xcode 4 17

2.1 Xcode的欢迎界面 18

2.2使用模板创建MyDiary项目 19

2.3 Xcode的工作界面 21

2.3.1 Xcode工具栏 21

2.3.2导航区域 22

2.3.3 编辑区域 25

2.3.4通用区域 26

2.4使用代码编辑器 28

2.5 iOS模拟器 30

2.5.1 iOS模拟器的特性 31

2.5.2模拟器中iOS系统的基本设置 32

2.5.3在模拟器中安装和卸载应用程序 33

2.5.4 iOS模拟器的限制 34

2.6管理MyDiary项目的配置选项 34

2.6.1 设置设备的支持方向 35

2.6.2设置应用程序的图标 36

2.6.3设置显示状态栏 37

2.6.4 设置应用程序的启动画面 38

第3章 有关Objective-C的知识储备 40

3.1内存管理基础 41

3.1.1 C语言中的内存管理 42

3.1.2 面向对象的内存管理 42

3.2引用计数器 43

3.2.1 使用引用计数器 44

3.2.2 使用autorelease 48

3.3 类的setter与getter方法 51

3.4 dealloc方法 54

3.5使用properties简化访问器 54

3.6手动内存管理的规则 56

3.7 自动引用计数器 57

3.7.1 强引用 59

3.7.2 弱引用 60

第4章 Xcode中的Interface Builder 61

4.1 了解Interface Builder 62

4.1.1 Interface Builder中的关联 62

4.1.2故事板 63

4.2创建用户界面 66

4.2.1 对象库 66

4.2.2 向视图添加界面元素 67

4.2.3 Intetface Builder的布局工具 68

4.3 自定义界面的外观 71

4.3.1 属性检查窗口 71

4.3.2 设置辅助功能 72

4.3.3 在模拟器中使用辅助功能 73

4.4与代码进行关联 74

4.4.1要完成的效果 74

4.4.2 outlet变量和action方法简介 75

4.4.3 为ViewController类添加成员变量 75

4.4.4创建outlet关联 76

4.4.5 创建action关联 77

4.4.6使用快速检查器查看关联 78

第5章视图控制器 80

5.1 MVC设计模式简介 81

5.2 MyDiary项目中的“关于作者”控制器 82

5.2.1 为“关于作者”控制器准备照片素材 83

5.2.2 设置Segmented Control 84

5.2.3为控制器准备相关数据 85

5.2.4 UIImage的类方法介绍 87

5.3视图控制器的重构 88

5.4标签栏控制器 90

5.4.1标签栏和其中的标签 90

5.4.2在故事板中添加标签栏控制器 91

5.4.3 设置标签栏配置条目 94

5.5与视图控制器相关的方法介绍 96

第6章通过设备获取用户位置 99

6.1项目、目标和框架 100

6.2 Core Location简介 101

6.3创建LocationViewController控制器 103

6.4 Core Location框架 105

6.4.1 从CLLocationManager获取信息 107

6.4.2 在程序中确认定位服务是否可用 109

6.4.3 CLLocation类 111

6.5委托 112

6.5.1 协议 112

6.5.2 协议方法 114

6.5.3委托、控制器和内存管理 115

6.6使用MapKit 116

6.6.1 高德地图iOS API 116

6.6.2使用高德iOS API显示地图 116

6.6.3 在真机上测试高德地图 121

第7章创建日记列表 123

7.1表格视图的组成部分 124

7.2准备要显示的数据 124

7.2.1 向Diary类的成员变量赋值 125

7.2.2对象的分配和初始化 126

7.2.3 在故事板中添加表格视图 128

7.2.4 Arrays类 131

7.3 UITableViewController类 133

7.3.1 剖析DiaryListViewController 134

7.3.2 UITableView的数据源 134

7.4 UITableViewCell类 135

7.4.1 创建与检索单元格 137

7.4.2 UITableViewCell的复用 140

7.5增加点击交互功能 141

第8章通过导航控制器显示多个视图 144

8.1 使用导航控制器进行视图间的导航 145

8.1.1 导航控制器介绍 146

8.1.2创建导航控制器 147

8.1.3 导航栏 151

8.2增加日记的详细页面 155

8.3使用UINavigationController进行导航 159

8.3.1 推出视图控制器 159

8.3.2在视图控制器间传递数据 160

第9章 为日记添加文本记录功能 162

9.1创建新的视图控制器 163

9.1.1 创建CreateDiaryViewController类 163

9.1.2创建Create Diary View Controller场景 164

9.1.3 建立IBOutlet和IBAction关联 168

9.1.4在应用程序中呈现和销毁CreateDiaryViewController 170

9.2几种常用的文本控件 175

9.2.1 UILabel控件 175

9.2.2 UITextField控件 176

9.2.3 UITextView对象 177

9.3虚拟键盘的使用 178

9.4 NSDate及其相关类 180

9.5 日记记录传回DiaryListViewController 181

第10章为日记本添加照相功能 184

10.1 为项目添加新的视图控制器 185

10.1.1 创建CameraViewController类 185

10.1.2 CameraViewController的呈现与销毁 187

10.2使用UIImagePickerController进行拍照 188

10.3在应用程序中存储图片 192

10.3.1 NSDictionary类 193

10.3.2创建和使用键 195

10.3.3 在Detail Diary View Controller场景中显示日记照片 198

第11章保存与载入日记 200

11.1应用程序沙箱 201

11.2创建单例模式DiaryStore类 202

11.3获取指定目录的路径 204

11.4 归档 205

11.4.1 对象的归档 205

11.4.2对象的解档 206

11.5应用程序的状态与过渡 209

11.6使用NSData将数据写入文件系统 212

11.7在Mac系统中查看应用程序的资源 214

第12章在日记中录制和播放声音 216

12.1创建录音机的界面 218

12.2声音的录制 220

12.2.1 保存录制的音频文件 220

12.2.2 完善RecordViewController控制器 224

12.2.3按照用户的要求进行录音 226

12.3声音的播放 227

12.4中断的处理 229

12.4.1 在播放声音时处理中断 229

12.4.2在录制声音时处理中断 230

12.5 在Detail Diary View Controller场景中播放声音 231

第13章应用程序的偏好设置 234

13.1 了解设置绑定资源包 235

13.2为MyDiary添加设置绑定资源包 235

13.2.1 向项目中添加设置绑定资源包 236

13.2.2设置属性列表 236

13.2.3添加文本框设置 239

13.2.4添加密码文本框设置 241

13.2.5添加多值字段 241

13.2.6添加开关设置 243

13.2.7添加滑块设置 243

13.2.8设置滑块图标 243

13.2.9增加设置子视图 245

13.3 在应用程序中读取偏好设置内容 247

第14章iOS应用程序架构介绍 250

14.1 Objective-C和Cocoa Touch 251

14.1.1 Cocoa Touch层 251

14.1.2 Foundation框架 252

14.1.3 iOS中的各种框架 252

14.2 iPhone应用程序的架构 253

14.2.1 main.m文件 254

14.2.2 自动释放池 254

14.2.3 UIApplicationMain()函数 255

14.2.4应用程序委托 256

14.2.5视图控制器 257

14.3 iOS应用程序的组成 258

14.3.1 应用程序文件夹的结构 258

14.3.2 可执行文件 258

14.3.3 Info.plist文件 258

14.3.4程序图标和启动画面 259

14.3.5 XIB文件 259

14.3.6 IPA文档 259

14.4平台的限制 260

第15章应用程序的调试 262

15.1 iOS帮助文档 263

15.1.1 快速安装帮助文档 264

15.1.2 帮助文档的窗口 265

15.1.3 类的文档页面介绍 268

15.2代码调试器 269

15.2.1 断点的设置 270

15.2.2调试代码 272

15.2.3 调试控制台 274

15.2.4检视对象 276

第16章创建可滚动的视图 277

16.1 UIScrollView类 278

16.2 Scroll View和Text Field 283

16.2.1 完善Scroll View Controller中的界面元素 283

16.2.2编写与滚动相关的代码 284

16.3消息通知中心 288

16.4 完善CreateDiaryViewController控制器 290

16.4.1 使用Scroll View 290

16.4.2 在Text View中让键盘消失 293

第17章 自动旋转和自动调整大小 296

17.1 自动旋转的机制 297

17.1.1 点、像素和视网膜显示 298

17.1.2旋转的方式 298

17.2通过autosize属性处理旋转 298

17.2.1 创建一个新的视图控制器 299

17.2.2 配置所支持的方向 299

17.2.3 在控制器中设定支持方向 300

17.2.4使用autosize属性设计界面 303

17.2.5 设置按钮的autosize属性 305

17.3旋转时重构视图 306

17.3.1 创建和关联Outlet 307

17.3.2旋转时移动按钮 307

17.4旋转时切换视图 309

17.4.1 设计两个视图 309

17.4.2执行旋转时的切换 312

17.4.3 改变Outlet Collections 314

第18章编辑表格视图 315

18.1表格视图的编辑模式 316

18.2使用不同类型的附件指示器 317

18.3创建自定义的单元格附件指示器 319

18.4显示具有层级的表格视图 321

18.5为表格创建Header和Footer 322

18.5.1 创建头视图 323

18.5.2 载入XIB文件中的视图 324

18.5.3 设置头视图 325

18.5.4设置脚视图 326

18.6删除行 328

18.7移动表格视图中的行 329

18.8在表格视图中使用刷新控件 331

第19章手势识别 333

19.1多点触摸概述 334

19.1.1 基本的操作手势 335

19.1.2手势识别的分类和状态 335

19.1.3 触摸事件所响应的方法 336

19.2拖曳手势的检测 336

19.2.1 简单的手势识别 337

19.2.2 UIPanGestureRecognizer类 339

19.3轻划手势的检测 340

19.4旋转手势的检测 342

19.5长按手势的检测 344

19.6掐捏手势的检测 345

第20章警告用户 348

20.1 通过警告对话框与用户进行交互 349

20.1.1 构建简单的Alert警告对话框 349

20.1.2设置Alert的delegate 353

20.1.3显示警告对话框 354

20.1.4警告的类型 354

20.2在警告对话框中呈现菜单 356

第21章应用程序的本地化 359

21.1 使用NSLocale将项目国际化 360

21.2本地化资源 366

21.2.1 本地化资源文件 366

21.2.2 使用NSLocalizedString和String Tables 369

第22章 日历和事件 373

22.1 Event Kit框架 374

22.1.1 通过CalDAV同步Google日历 374

22.1.2获取日历列表 375

22.1.3 向日历中添加事件 380

22.1.4访问日历的事件列表 382

22.1.5从日历中移除事件 386

22.1.6添加重复发生的事件 389

22.2 Event Kit UI框架 392