出版社:人民邮电出版社
年代:2014
定价:99.0
本书内容完整丰富,具有较强的通用性, 编程领域中各层次读者都能通过本书快速学习iOS的SDK开发,提高相关技能。开发实战演练》内容完整丰富,具有较强的通用性, 编程领域中各层次读者都能通过本书快速学习iOS的SDK开发,提高相关技能。
目 录
第一篇 iOS开发基础知识
第0章 在项目开发之前 2
0.1 知识的准备 2
0.2 软件的准备 3
0.3 硬件的准备 4
0.4 设计模式的准备 5
0.4.1 Model-View-Controller设计模式 5
0.4.2 Delegation设计模式 7
0.4.3 Target-Action设计模式 8
总结 9
第1章 Xcode与开发环境 10
1.1 OS X与开发相关的特点 10
1.1.1 使用Dock启动应用程序与查看状态 11
1.1.2 使用Finder来显示文件和目录的结构与信息 11
1.1.3 使用Spotlight来快速搜索文件 13
1.1.4 使用terminal来进行文本模式的命令行操作 13
1.2 认识Xcode与开发环境 13
1.2.1 Xcode的偏好设置 14
1.2.2 Xcode的工作空间 15
1.3 开发设备管理 17
1.4 程序代码库管理 18
1.5 项目目录管理 19
1.6 存档目标管理 20
1.7 说明文件管理 21
总结 22
第2章 Objective-C与对象基础 23
2.1 命令行模式项目与Foundation框架 23
2.2 Objective-C的类 26
2.2.1 类的声明 27
2.2.2 类的成员变量与函数 28
2.2.3 实现类的成员函数 29
2.2.4 声明与实现的切换 30
2.2.5 函数的多参数 32
2.3 Objective-C的对象实例 33
2.3.1 对对象发送消息 34
2.3.2 从类生成对象 35
2.4 使用静态程序分析器 37
2.4.1 静态程序代码分析 37
2.4.2 对象的管理与retaincount(保留计数器) 38
2.4.3 释放分配的内存 39
2.5 Property(属性)的定义 39
2.5.1 属性的声明 39
2.5.2 属性的实现 40
2.5.3 设值函数的属性 42
2.5.4 @property能设定的其余属性 47
2.6 Objective-C中的字符串 47
2.6.1 字符串的声明 48
2.6.2 使用格式化字符串来动态产生字符串的内容 49
总结 51
第3章 iOS应用程序与生命周期 52
3.1 创建一个空白的iOS项目 52
3.1.1 使用项目向导生成iOS空白项目 52
3.1.2 iOS项目的运行 54
3.1.3 委托的设计模式 56
3.1.4 委托类与应用程序生命周期的建立 57
3.2 XIB文件与Model View Controller(MVC)设计模式 65
3.2.1 使用项目向导生成单一视角应用程序(Single View Application) 65
3.2.2 xib版面配置文件与MVC的设计样式 67
3.3 Storyboard的版面配置文件 71
3.3.1 应用程序的初始化与plist文件 72
3.3.2 Storyboard的操作与MVC的设计模式 74
3.4 实现MVC界面 77
3.4.1 新增应用程序初始主界面文件 77
3.4.2 在界面文件中加载View Controller组件 78
3.4.3 实现定制化View Controller组件 80
总结 83
第4章 Objective-C进阶 84
4.1 iOS与协议Protocol 84
4.1.1 声明协议与要实现的函数 85
4.1.2 由其他对象实现的函数 86
4.1.3 协议之间的引用 89
4.2 Collection框架 91
4.2.1 CocoaTouch中的Collection 91
4.2.2 使用数组(NSArray)来存取顺序的数据 91
4.2.3 使用NSArray来定义不可变的数组 93
4.2.4 使用快速枚举(FastEnumeration)的方式获取对象 96
4.2.5 使用NSMutableArray来定义可变大小的数组 98
4.2.6 使用Set来存取不可重复的数据 101
4.2.7 使用NSSet定义不可变的Set 101
4.2.8 使用NSMutableSet定义可变大小的集合 104
4.2.9 使用NSCountedSet来获取重复对象的数量 105
4.2.10 使用键值存取Dictionary中的内容 107
4.2.11 使用NSDictionary定义不可变的dictionary 107
4.2.12 使用NSMutableDictionary定义可变的dictionary 108
4.2.13 使用NSIndexSet来获取数组的任意索引值 109
4.2.14 在NSMutableIndexSet中新增区域 111
4.2.15 在NSMutableIndexSet中删除区域 111
总结 112
第5章 用户界面设计 113
5.1 认识Xcode的界面编辑器与开发用户界面 113
5.2 使用IBAction与IBOutlet链接程序和用户界面 116
5.2.1 连接用户界面与IBOutlet变量 116
5.2.2 从用户界面生成IBOutlet变量 121
5.2.3 链接用户界面与IBAction函数 124
5.2.4 从用户界面产生IBAction函数 129
5.3 处理文本框 132
5.3.1 文本框和虚拟键盘 132
5.3.2 让文本框能与程序交互 134
5.4 设置组件的位置和大小 138
5.5 使用代码生成组件 139
5.5.1 利用代码生成文本框 140
5.5.2 按照对象的标识符来判定不同的文本框并做出反应 142
5.5.3 标签的属性设定 143
5.5.4 设定按钮组件的属性 145
5.5.5 IBAction和IBOutlet的交互 150
总结 154
第二篇 页面的切换
第6章 实现多界面应用程序 156
6.1 公用程序模板应用程序 156
6.1.1 新增公用程序模板应用程序 156
6.1.2 从应用程序模板向导新增使用storyboard的公用程序(Utility Application) 159
6.2 标签式模板应用程序 161
6.2.1 在xib下新增一个标签页面 162
6.2.2 在storyboard下新增标签页面 166
6.2.3 连接storyboard和类文件,用代码控制用户界面 169
6.2.4 多标签的处理 170
6.2.5 标签栏模板的图标处理 171
6.3 页面模板应用程序 174
6.4 具备主从关系的模板文件 177
6.4.1 数据的新增/删除 180
6.4.2 应用程序的生命周期 181
6.4.3 主从关系的storyboard项目模板 182
总结 186
第7章 页面管理 188
7.1 使用View Controller进行页面的旋转和转置 188
7.1.1 xib中可视化组件旋转后的摆放 191
7.1.2 适应不同屏幕而提供不同的xib组件 195
7.2 使用UINavigation Controller(导航控制器)进行多页面的顺序遍历 199
7.2.1 导航控制器的基本操作 200
7.2.2 在单一视角项目(Single View Project)中新增导航栏 201
7.2.3 xib中对导航栏的模拟 204
7.2.4 在标签栏项目中新增导航栏 204
7.2.5 利用UINavigationController进行页面切换 206
7.3 导航栏的应用 211
7.3.1 使用导航栏进入View Controller的编辑模式 212
7.3.2 自定义导航栏的按钮 213
7.3.3 导航栏的工具栏 215
7.3.4 导航栏工具栏的自定义按钮 217
7.4 建立滚动条窗口组件 218
7.4.1 新增滚动条组件 219
7.4.2 在滚动条组件中新增内容 221
7.5 取得委托对象的实例 223
总结 225
第8章 使用Storyboard进行界面设计 226
8.1 从xib到storyboard 226
8.2 在空白项目中使用storyboard 227
8.2.1 新增storyboard文件 228
8.2.2 设定项目主要的storyboard文件 229
8.2.3 storyboard的操作 230
8.2.4 连接storyboard和View Controller 232
8.2.5 修改默认项目并运行 233
8.2.6 导航栏与storyboard 234
8.2.7 标签栏与storyboard 236
8.3 storyboard与View Controller的交互 237
8.3.1 在场景中加入用户交互组件 237
8.3.2 载入storyboard中单独的View Controller 237
8.3.3 载入外部xib的View Controller 240
8.4 在Scene中使用Segue设定界面的连贯 241
8.4.1 Modal类型的Segue 242
8.4.2 Push类型的Segue 244
8.5 Segue与数据传递 246
8.6 从程序中驱动Segue 249
8.7 Storyboard和静态表格 251
8.7.1 设定静态表格的类型 252
8.7.2 分栏与区域标题结尾 255
8.7.3 静态表格与Segue 256
8.8 Segue与动态切换 257
总结 258
第三篇 常用的Cocoa Touch框架
第9章 实现多语言支持 260
9.1 iOS下多语言的设定 260
9.2 多语言字符串的处理 261
9.2.1 新增字符串文件 262
9.2.2 编写字符串文件 263
9.2.3 多语言测试时的错误排除 267
9.3 从现有程序产生多语言字符串资源文件 268
9.4 使用多语言的注释 269
9.5 取得默认的语言 271
9.6 xib文件的多语言 272
9.6.1 多语言xib文件的选择 272
9.6.2 多语言xib文件的实现 273
总结 277
第10章 iOS应用程序的常用行为 278
10.1 调用的系统URL 278
10.1.1 调用应用程序自定义的URLScheme 279
10.1.2 调用浏览器Safari浏览链接 280
10.1.3 发送E-mail的调用 281
10.1.4 拨打电话的调用 283
10.1.5 发送短信的调用 285
10.1.6 访问地图的调用 286
10.1.7 播放优酷视频 290
10.1.8 打开App Store的调用 292
10.2 操作用户偏好来存放应用程序的常用设定 293
10.2.1 认识「设定」应用程序 294
10.2.2 定义用户偏好值 294
10.2.3 用户偏好的图标 296
10.2.4 用户偏好的多语言界面 298
10.2.5 plist文件的编辑方式 299
10.2.6 新增用户偏好的组 300
10.2.7 用户偏好的文字字段 302
10.2.8 用户偏好的选项界面 303
10.2.9 用户偏好的开关选项 305
10.2.10 用户偏好的标题选项 306
10.2.11 用户偏好的滑杆选项 308
10.2.12 用户偏好的子选项 309
10.3 读取用户偏好的设定值 312
10.3.1 使用NSUserDefaults类读取用户偏好 312
10.3.2 检测用户偏好的变更 314
10.3.3 使用NSUserDefaults类设定用户偏好 315
10.3.4 用户偏好值的调试 318
总结 320
第11章 表格的使用 321
11.1 使用UITableViewController 322
11.2 使用datasource定义表格的数据 326
11.2.1 定制化表格的内容 330
11.2.2 表格单元格的附属类型 333
11.2.3 表格的编辑模式 334
11.3 表格的delegate对象 335
11.3.1 新增表格的内容 338
11.3.2 删除表格的内容 344
总结 346
第12章 使用CoreData 347
12.1 Core Data的架构 349
12.2 在程序中加入Core Data的功能 349
12.3 新增数据 355
12.4 查询数据 357
12.5 删除数据 361
12.6 修改数据 362
总结 367
第13章 文件存取与多线程 368
13.1 存取应用程序目录中的文件 368
13.1.1 使用NSBundle存取应用程序中的文件 369
13.1.2 读取Bundle中的文字 371
13.1.3 Bundle和Retina资源的准备 373
13.2 应用程序的文件和外部的交互 376
13.3 使用定时组件在特定时间执行程序 378
13.3.1 使用NSTimer定时组件 379
13.3.2 只执行一次的定时器 379
13.3.3 在NSTimer中传入参数 382
13.3.4 持续执行的定时器 382
13.3.5 结合定时器和Run Loop 384
13.4 使用多线程进行异步执行 386
13.4.1 使用NSThread新增线程并执行 386
13.4.2 在线程中使用参数 387
13.5 操作对象和操作队列 389
13.5.1 使用NSInvocationOperation建立操作对象 390
13.5.2 继承NSOperation类建立操作对象 392
13.5.3 操作对象之间的依赖关系 394
总结 397
第14章 Block与GCD 398
14.1 定义与实现Block 398
14.1.1 从函数到Block 399
14.1.2 typedef和block变量 400
14.1.3 Block所能存取的变量 401
14.1.4 Block中变量的设值与block变量 404
14.1.5 使用Block存取静态变量 406
14.1.6 Block的语法 407
14.2 Block的调试 408
14.3 Block的应用 412
14.3.1 Block用于viewcontroller 412
14.3.2 在Collection中使用Block 414
14.3.3 Block用于字典的循环 416
14.3.4 Block应用于集合(Set)的循环 416
14.3.5 用于数组中对象的排序 417
14.3.6 Block用于数组中对象的过滤 420
14.4 使用GCD执行block代码 422
14.4.1 GCD与Block 422
14.4.2 取得主线程的队列并顺序执行 424
14.4.3 取得其他执行的队列 425
14.4.4 同步执行队列的注意事项 427
14.4.5 GCD与并行执行 430
14.4.6 延迟执行block 432
总结 433
第四篇 绘图、触控与多媒体
第15章 使用CoreGraphic绘制图形 436
15.1 绘图的概念 436
15.1.1 绘图上下文 437
15.1.2 CoreGraphic的基本类型与运算 437
15.2 使用UIView进行绘图 441
15.2.1 UIView的绘图周期 441
15.2.2 UIView和绘图上下文 442
15.2.3 在UIView中绘制贝兹路径(BezierPath) 442
15.2.4 路径的填充和样式 446
15.2.5 绘制圆弧与曲线与路径端点 449
15.2.6 路径和转换运算 452
15.2.7 绘制贝塞尔曲线 458
15.2.8 使用CoreGraphics函数进行绘图 462
15.2.9 使用CurrentTransformMatrix进行绘图坐标转换 464
15.2.10 填充的顺序与色彩的调和 466
总结 468
第16章 切换效果与动画 469
16.1 使用切换动画切换画面 469
16.1.1 单一窗口的切换动画 469
16.1.2 从一窗口组件切换到另一个窗口组件 472
16.2 使用UIView制作基础动画 476
16.2.1 取得UIView下的CALayer进行动画 476
16.2.2 同时执行两个属性的动画或先后执行两个属性的动画 479
16.2.3 动画的参数与重复循环 480
16.2.4 多重动画的使用 481
16.2.5 取得UIView下的CALayer进行动画 483
16.3 使用CALayer制作动画 484
16.3.1 建立CALayer进行不需明确声明的动画 485
16.3.2 使用CAShapeLayer建立几何动画图层 487
16.3.3 使用CATextLayer建立文字动画图层 490
16.3.4 使用CAReplicatiorLayer建立样式重复的对象 493
16.4 使用Core Animation进行明确声明的动画 495
16.4.1 使用CABasicAnimation实现线性改变属性的动画 497
16.4.2 使用CAMediaTiming类进行动画属性的控制 501
16.4.3 设定动画的委托对象与委托函数控制 502
16.4.4 使用CAKeyFrameAnimation进行关键界面的设定 504
16.4.5 在明确的动画声明中同步使用多重动画属性 505
16.4.6 动画执行完成后的响应与顺序动画 507
16.5 在CALayer的2.5度空间制作动画 509
16.5.1 Z轴的变换与视点的建立 511
16.5.2 三度空间的旋转 514
总结 516
第17章 触控 517
17.1 触控与事件 517
17.1.1 UITouch触控事件类 518
17.1.2 结合触控与用户界面 520
17.2 触控区域的判定 526
17.3 触控与手势 530
17.3.1 位移的手势识别 532
17.3.2 滑动的手势识别 535
17.3.3 旋转的手势识别 538
17.3.4 缩放的手势识别 539
17.3.5 点击的手势识别 542
17.3.6 长按的手势识别 544
17.3.7 识别器的委托函数 547
17.3.8 多重识别器的合并使用 549
17.4 多点触控 550
17.5 结合触控与绘图 552
总结 555
第18章 相机和滤镜 556
18.1 图片集与相片 556
18.1.1 UIImagePickerController的初始化 556
18.1.2 使用相机功能 562
18.1.3 UIImagePickerController的委托对象 565
18.1.4 储存相机提取的界面 569
18.2 CoreImage与滤镜 571
18.2.1 滤镜与影像 571
18.2.2 内建的滤镜 572
18.2.3 滤镜的属性 575
18.3 滤镜的使用 582
18.3.1 使用CIColorInvert色彩反转滤镜 583
18.3.2 使用CISepiaTone深褐色调滤镜 584
18.3.3 使用CIHueAdjust色彩调整滤镜 585
18.3.4 使用CIVignette渐变滤镜 587
18.3.5 使用CICheckterboardGenerator产生棋盘效果 588
18.3.6 使用滤镜混合图形 591
18.4 多重滤镜的使用 593
总结 595
第19章 影音播放 596
19.1 声音播放 596
19.1.1 使用AVAudioPlayer框架 596
19.1.2 取得声音文件的信息 599
19.1.3 播放多重音轨 603
19.1.4 AVAudioPlayer的委托对象与中断处理 604
19.1.5 在后台执行音乐 606
19.2 影片播放 607
19.2.1 使用MPMoviePlayerController类播放影片 607
19.2.2 播放流媒体影音 610
19.2.3 使用AVPlayer类播放影片 614
19.2.4 影片与外接屏幕 617
总结 620
第五篇 地图与网络存取
第20章 地图与GPS 622
20.1 使用MKMapView显示地图 622
20.1.1 地理信息相关的数据结构 623
20.1.2 在MapView中设定位置 625
20.1.3 在MapView移动中心点 626
20.1.4 使用MKMapPoint标记地图 628
20.1.5 地图的响应函数 630
20.2 地图的标记 631
20.2.1 建立遵循MKAnnotation协议的对象 632
20.2.2 使用MKAnnotationView自定义地标 634
20.2.3 设定加入产生的地标之后的响应函数 635
20.2.4 地标详细信息 637
20.2.5 地点标记的拖曳与移动 638
20.3 取得用户位置的标记 640
20.4 地图与定制化图层 641
20.4.1 绘制圆形的地图图层 642
20.4.2 绘制多边形线段的地图图层 643
20.4.3 绘制多边形的地图图层 644
20.5 使用地理信息编码 645
总结 646
第21章 常用的网络存取功能 647
21.1 显示网页 647
21.1.1 使用UIWebView 647
21.1.2 使用UIWebViewDelegate查看网页内容 649
21.2 同步与异步的数据存取 650
21.2.1 使用NSURLConnection执行异步调用 651
21.2.2 使用NSURLConnection执行同步调用 653
21.2.3 同步调用与GCD的异步执行 654
21.3 读取JSON格式 656
21.3.1 将Foundation对象转成JSON对象 656
21.3.2 从网络上读取JSON对象 658
21.4 整合Facebook 660
21.4.1 下载FacebookSDK 661
21.4.2 设定Facebook应用程序并取得AppID 662
21.4.3 初始化Facebook对象 663
21.4.4 实现Facebook的登入与注销 665
总结 667
本书台湾计算机书天龙榜第一名全面!使用iOS+ Xcode +Objective-C2.0进行开发专业!精辟的技巧分享,直达开发捷径帮助读者快速进入移动开发实战角色图解!完整、清晰的系统架构、流程图及程序运行图,拓展读者的开发思路《iOS SDK编程实战》是初学者进入iOS开发领域的敲门砖;是让身为程序员的读者可以早点完成工作,早日让自己的App上架赚大钱;是开发者必备的学习手册和学以致用的权威指南。 《iOS SDK编程实战》除了一般iOS程序设计书籍比较常见的基本技术,如Objective-C与MVC设计模式的内容外,在本书的后半段着重介绍页面的连贯与页面管理,包括利用Storyboard与View Controller的交互,做到多样化、层级与一致的页面呈现,Storyboard的设计样式让设计App就像在讲故事,连贯而顺畅,这同时也是iOS开发最经典的地方之一。另外,在多媒体实现、触控动画及图像处理等内容中,读者可以从实例演练中学到iOS程序开发的概念与技巧,达到事半功倍的效果,并学会自行扩展iOS程序开发技能的深度和广度,注入个人的创意,创造出全新的价值。 《iOS SDK编程实战》适合iOS初学者阅读,也适合程序员使用,以及作为大专院校的师生用书和相关培训学校的教材。
书籍详细信息 | |||
书名 | iOS SDK编程实战站内查询相似图书 | ||
9787115348319 如需购买下载《iOS SDK编程实战》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN | |||
出版地 | 北京 | 出版单位 | 人民邮电出版社 |
版次 | 1版 | 印次 | 1 |
定价(元) | 99.0 | 语种 | 简体中文 |
尺寸 | 26 × 19 | 装帧 | 平装 |
页数 | 184 | 印数 | 3500 |
iOS SDK编程实战是人民邮电出版社于2014.3出版的中图分类号为 TN929.53 的主题关于 移动终端-应用程序-程序设计 的书籍。
(美) 纳皮尔 (Napier,R.) , (美) 库玛 (Kumar,M.) , 著
曾源, 等编著
(美) 康威 (Conway,J.) , (美) 赫乐嘎斯 (Hillegass,A.) , 著
(美) 科尔 (Keur,C.) , (美) 赫乐嘎斯 (Hillegass,A.) , (美) 康威 (Conway,J.) , 著
(英) 克里斯蒂安·科尔, (美) 亚伦·赫乐嘎斯, 著
关东升, 著
关东升, 著
关东升, 著
(美) 纽伯格 (Neubury,M.) , 著