登录 立即注册
金钱:

Code4App-iOS开发-iOS 开源代码库-iOS代码实例搜索-iOS特效示例-iOS代码例子下载-Code4App.com

查看: 4425|回复: 240

[iOS 资源下载] AppStore掘金:iPhone SDK应用程序开发.pdf

  [复制链接]

604

主题

1162

帖子

1万

金钱

管理员

Rank: 9Rank: 9Rank: 9

明星会员推广达人分享大神精品牛人活跃会员热心会员优秀版主颜值认证终身成就奖

发表于 2016-5-18 11:43:21 | 显示全部楼层 |阅读模式
1.png

编辑推荐
  本书提供了极其实用的知识与代码,教你使用苹果公司的SDK为iPhone和iPod Touch创建移动应用程序和游戏。本书通过大量的例子介绍了这一开发模式及其所使用的Objective—C语言,同时也将带你领略设计功能全面的应用程序所必需的各种SDK框架。
  本书将助你完成下列功能:
  ·使用Interface Builder和UIKit框架设计用户界面元素;
  ·创建应用程序控件,如窗口和导航栏等;
  ·使用Core Graphics和Quartz core创建并且管理图层和图像变换;
  ·通过AV Foundation对声音文件进行混音并播放,使用Audio Toolbox录制并回放数字音频流;
  ·使用CF Network框架进行网络编程;
  ·用Core Location框架操作iPhone的GPS:
  ·在应用程序中加入视频播放器。
  “本书内容详尽,书中有很多包含清晰注解的示例项目,iPhone开发者将从中受益匪浅。Jonathan的讲述详细易懂,极具权威性。”
  ——Jon Hohle GoDaddy.com软件工程师



内容简介
  《AppStore掘金:iPhone SDK应用程序开发》全面概括了使用苹果公司官方SDK为iPhone/iPod Touch开发应用程序的方方面面,包括开发工具、编程语言和各种框架库。书中全方位覆盖了iPhone编程,包括UIKit、多点触摸、Quartz Core、音频、视频、地理定位、地址簿、网络编程等内容,详细介绍了UIKit组件,并配以实用的例子,简要介绍了Objective-C,重点讲解其与C/C++的异同之处,并介绍了几种Objective-C特有的语法概念。《AppStore掘金:iPhone SDK应用程序开发》还专门介绍如何自行编码实现专用高级特效:CoverFlow和Flip Page。
  《AppStore掘金:iPhone SDK应用程序开发》适合具有一定编程经验同时又希望进行iPhone开发的程序员阅读。书中的各种提示和技巧无论对iPhone开发的新手和资深程序员都大有裨益,《AppStore掘金:iPhone SDK应用程序开发》还可以作为iPhone SDK开发的参考手册,在需要时快速查找特定组件的相关内容。



作者简介
  Jonathan Zdziarski是全职进行研究的科学家,同时也是资深的移动设备黑客,在破解iPhone环境以便进行第三方软件开发的过程中扮演了重要角色。他是O’Reilly的iPhone Open Application Development和iPhone Forensics两书的作者。

目录
第1章 iPhone SDK初探 1
1.1 应用程序剖析 1
1.1.1 Xcode揭密 3
1.2 安装iPhone SDK 5
1.2.1 开发所需资源 6
1.2.2 iPhone模拟器 6
1.2.3 下载并安装iPhone SDK 7
1.3 配备iPhone 8
1.4 构建并安装应用程序 10
1.4.1 模型-视图-控制器 11
1.4.2 应用程序模板 11
1.4.3 Xcode项目布局 12
1.4.4 原型 13
1.4.5 添加框架 14
1.4.6 设置活跃SDK 15
1.4.7 构建应用程序 16
1.4.8 安装应用程序 16
1.5 转换到Objective-C 16
1.5.1 消息机制 17
1.5.2 类和方法的声明 18
1.5.3 实现 19
1.5.4 属性 21
1.5.5 协议 22
1.5.6 类别 23
1.5.7 替位 24
1.5.8 其他资源 25

第2章 Interface Builder:Xcode中制作GUI的GUI 26
2.1 窗口、视图和视图控制器 27
2.2 现有模板 27
2.3 新建模板 28
2.4 用户界面元素 29
2.4.1 控制器 30
2.4.2 数据视图 30
2.4.3 输入和数据 31
2.4.4 窗口、视图和栏 31
2.5 查看器 31
2.6 设计UI 31
2.6.1 窗口 31
2.6.2 视图控制器 32
2.6.3 视图 32
2.6.4 创建视图间联系 33
2.6.5 在代码中添加联系 34
2.7 从项目中移除Interface Builder 35

第3章 介绍UI Kit 36
3.1 基本用户界面元素 37
3.2 窗口和视图 38
3.2.1 创建窗口和视图 39
3.2.2 显示视图 40
3.2.3 史上最无用的应用程序:HelloView 40
3.2.4 行为解释 42
3.2.5 从UIView派生 42
3.2.6 传统废柴程序:HelloWorld 44
3.2.7 行为解释 46
3.3 视图控制器 47
3.3.1 创建视图控制器 47
3.3.2 从Interface Builder载入视图 49
3.3.3 方向变换 49
3.3.4 弃置视图控制器 50
3.3.5 使用视图控制器的Hello World:ControllerDemo 50
3.3.6 行为解释 53
3.3.7 进一步学习 54
3.4 文本视图 54
3.4.1 创建文本视图 55
3.4.2 赋予内容 58
3.4.3 显示HTML 59
3.4.4 网页源码阅读器:SourceReader 60
3.4.5 行为解释 63
3.4.6 进一步学习 64
3.5 导航栏与控制器 64
3.5.1 创建导航控制器 64
3.5.2 导航控制器属性 65
3.5.3 添加分段控件 68
3.5.4 添加工具栏 69
3.5.5 分页导航练习:PageDemo 72
3.5.6 行为解释 76
3.5.7 进一步学习 77
3.6 转场动画 77
3.6.1 创建转场 78
3.6.2 附加转场 79
3.6.3 翻页转场:FlipDemo 80
3.6.4 行为解释 84
3.6.5 进一步学习 84
3.7 操作表单与警报 84
3.7.1 警报 85
3.7.2 操作表单 85
3.7.3 解除操作表单 87
3.7.4 世界末日(待批准):EndWorld 87
3.7.5 行为解释 91
3.7.6 进一步学习 91
3.8 表格视图与控制器 91
3.8.1 创建表格 92
3.8.2 表格单元 94
3.8.3 实现多选 98
3.8.4 编辑与扫动删除 98
3.8.5 重新载入表格 99
3.8.6 简单的文件浏览器:TableDemo 100
3.8.7 行为解释 105
3.8.8 进一步学习 106
3.9 操纵状态栏 106
3.9.1 隐藏状态栏 107
3.9.2 状态栏风格 107
3.9.3 状态栏方向 107
3.10 应用程序徽章 108
3.10.1 显示应用程序徽章 108
3.10.2 移除应用程序徽章 109
3.10.3 进一步学习 109
3.11 应用程序服务 109
3.11.1 挂起与复原 109
3.11.2 程序终止 110
3.12 调用Safari 110
3.13 发起电话呼叫 111

第4章 多点触摸事件与界面几何 112
4.1 界面几何结构体介绍 112
4.1.1 CGPoint 112
4.1.2 CGSize 113
4.1.3 CGRect 113
4.2 处理多点触摸事件 115
4.2.1 UITouch通知 115
4.2.2 UIEvent 116
4.2.3 事件处理 117
4.2.4 例子:点触计数器 118
4.2.5 例子:单击并拖曳 119
4.2.6 处理多点触摸 120
4.2.7 捏合检测:PinchMe 120
4.2.8 Tracking多点触摸图标跟踪:TouchDemo 122
4.2.9 行为解释 127
4.2.10 进一步学习 127

第5章 Quartz Core图层编程 128
5.1 了解图层 128
5.1.1 图层层次结构 129
5.1.2 尺寸与位置 130
5.1.3 排布与显示 130
5.1.4 绘制 131
5.1.5 变换 131
5.1.6 图层动画 132
5.1.7 图层变换 132
5.1.8 玩转图层:BounceDemo 134
5.1.9 行为解释 138
5.1.10 进一步学习 139

第6章 喧嚣:Audio Toolbox和 AVFoundation 140
6.1 AVFoundation框架 141
6.1.1 音频播放器 141
6.1.2 播放器属性 142
6.1.3 播放声音 143
6.1.4 代理方法 143
6.1.5 仪表计数 144
6.2 构建一个VU表:AVMeter 144
6.2.1 行为解释 152
6.2.2 进一步学习 153
6.3 音频服务 153
6.3.1 行为解释 154
6.4 音频队列 154
6.4.1 音频队列的结构 155
6.4.2 供应音频输出 156
6.4.3 音频缓冲区 157
6.4.4 回调函数 158
6.4.5 音量控制 159
6.4.6 例子:PCM播放器 160
6.4.7 行为解释 164
6.4.8 进一步学习 164
6.5 录音 165
6.5.1 音频队列结构体 165
6.5.2 供应音频输入 167
6.5.3 音频缓冲区 168
6.5.4 回调函数 169
6.5.5 访问原始数据 170
6.5.6 写入文件 170
6.5.7 例子:录音机 171
6.5.8 行为解释 174
6.5.9 进一步学习 174
6.6 振动 175

第7章 CFNetwork网络编程 176
7.1 套接字编程基础 176
7.1.1 套接字类型 177
7.1.2 CFSocket 177
7.1.3 CFSocketContext 182
7.1.4 套接字流 183
7.1.5 CFSocket例子:笑话服务器 187
7.1.6 进一步学习 190
7.2 CFHTTP与CFFTP 190
7.2.1 CFHTTP 190
7.2.2 CFFTP 192
7.2.3 进一步学习 193

第8章 定位:Core Location 194
8.1 Core Location管理器 195
8.1.1 查询参数 195
8.1.2 提交查询 196
8.1.3 接收更新 197
8.1.4 完成查询 198
8.1.5 错误处理 198
8.1.6 土话Core Location:WhereYouAt 199
8.1.7 行为解释 202
8.1.8 进一步学习 202

第9章 地址簿框架 203
9.1 访问地址簿 203
9.1.1 高层地址簿函数 204
9.1.2 查询地址簿 205
9.1.3 创建记录 205
9.1.4 操纵记录 206
9.1.5 多值属性 207
9.1.6 使用字典 210
9.1.7 图像数据 210
9.1.8 进一步学习 211
9.2 地址簿界面 211
9.2.1 联系人视图 211
9.2.2 联系人选取器 211
9.2.3 进一步学习 213

第10章 UI Kit进阶设计 214
10.1 通用控件 216
10.1.1 基类UIControl 216
10.1.2 分段控件 219
10.1.3 开关 222
10.1.4 滑块 224
10.1.5 文本字段控件 226
10.1.6 按钮 232
10.1.7 分页控件 234
10.1.8 进一步学习 236
10.2 偏好设置表格 236
10.2.1 创建偏好设置表格 236
10.2.2 显示偏好设置表格 241
10.2.3 偏好设置表格的例子:ShootStuffUp 241
10.2.4 行为解释 247
10.2.5 进一步学习 248
10.3 分段列表 248
10.3.1 创建分段列表 249
10.3.2 添加索引条 251
10.3.3 显示分段列表 251
10.3.4 一个更好的文件浏览器:TableDemo 251
10.3.5 行为解释 259
10.3.6 进一步学习 260
10.4 进度与活动指示器 260
10.4.1 小小转子:UIActivityIndicatorView 260
10.4.2 嫌转子俗就用UIProgressView 261
10.4.3 网络活动指示器 262
10.4.4 进一步学习 262
10.5 图像 262
10.5.1 图像对象 263
10.5.2 玩转图像和图案:ImageFun 266
10.5.3 图像视图:UIImageView 269
10.5.4 图像选取器 270
10.6 键盘属性 271
10.6.1 键盘风格 272
10.6.2 键盘外观 273
10.6.3 回车键 273
10.6.4 自动大写 273
10.6.5 自动更正 274
10.6.6 安全文本输入 274
10.7 选取器 274
10.7.1 创建选取器 274
10.7.2 显示选取器 276
10.7.3 读取选取器 276
10.7.4 挑选你的鼻子:NosePicker 276
10.7.5 行为解释 281
10.7.6 进一步学习 282
10.8 时间/日期选取器 282
10.8.1 创建时间/日期选取器 282
10.8.2 显示日期选取器 284
10.8.3 读取日期 284
10.8.4 选取独立日:DatePicker 284
10.8.5 行为解释 288
10.8.6 进一步学习 288
10.9 标签栏 288
10.9.1 标签栏控制器 289
10.9.2 构建一个标签栏控制器 289
10.9.3 可定制按钮 291
10.9.4 导航 292
10.9.5 代理的动作 292
10.9.6 又一个教科书式的例子:TabDemo 293
10.9.7 行为解释 295
10.9.8 进一步学习 295
10.10 感应器与设备信息 296
10.10.1 读取设备方向 296
10.10.2 读取设备信息 297
10.10.3 读取加速计 297
10.10.4 近距离感应器 298
10.10.5 进一步学习 299
10.11 滚动视图 299
10.11.1 创建滚动视图 299
10.11.2 属性 300
10.11.3 代理方法 301
10.11.4 滚动中的气象地图:BigImage 302
10.11.5 行为解释 304
10.11.6 进一步学习 305
10.12 网页视图 305
10.12.1 创建网页视图 305
10.12.2 显示网页视图 306
10.12.3 加载内容 306
10.12.4 导航 306
10.12.5 代理方法 307
10.12.6 Google搜索工具:WebDemo 307
10.12.7 行为解释 311
10.12.8 进一步学习 311

第11章 应用程序设定 312
11.1 字典和属性列表 312
11.1.1 创建字典 312
11.1.2 管理关键字 312
11.1.3 写入属性列表 313
11.1.4 读取属性列表 313
11.1.5 进一步学习 313
11.2 偏好设置束 314
11.2.1 添加关键字 314
11.2.2 读取偏好设置束的值 321
11.2.3 进一步学习 321

第12章 Cover Flow 322
12.1 用SDK编写Cover Flow:CovertFlow 322
12.1.1 行为解释 330
12.1.2 进一步学习 331

第13章 页面翻转 332
13.1 页面翻转的例子:PageControl 333
13.1.1 行为解释 340
13.1.2 进一步学习 340
13.2 用于多个视图的PageScrollView 340
13.2.1 行为解释 346

第14章 媒体播放器框架 348
14.1 电影播放器控件 348
14.1.1 属性 349
14.1.2 开始和停止播放电影 349
14.1.3 通知 350
14.1.4 进一步学习 351


查看全部↓

精彩书摘
  第1章 iPhone SDK初探
  如果你是Macintosh世界的新手,也许会惊奇地发现应用程序并不是.exe文件的形式。苹果公司的卓越设计著称于世,不仅体现在硬件和图形方面,也同样延伸到了软件架构的领域,其中就包括应用程序在文件系统上的组织方式。这种应用于苹果桌面系统中的策略,也被原样引入到了iPhone系统中。
  苹果采取的策略,就是创建一种模块化、自包含的应用程序,这种应用程序仅由其自身内部的文件资源构成。因此,安装应用程序非常容易,将其拖曳到应用程序文件夹即可;删除应用程序同样轻松,将其拖曳到废纸篓即可。在本章中,我们将研究iPhone应用程序的结构、运行iPhone SDK、探索苹果公司的Xcode IDE,并学习如何在iPhone上安装应用程序。最后,我们将介绍Objective-C语言及其特质,以便能从C和C++语言轻松过渡。
  1.1 应用程序剖析
  苹果公司想出了一种优雅的方式来在操作系统中存放应用程序。由于OS X是基于UNIX的平台,因此苹果公司希望它能符合基本的UNIX文件约定,所以古旧的资源分支方案就不敷使用了(就这一点来说,也不够高效)。挑战是:要设计一种结构,既能让一个应用程序仍然可以自包含,同时在那些不想用专有的权宜之计来破坏自己架构的文件系统上也可以使用。解决方案来自于Mac OS X的前身,也就是名为NeXT的系统,它将应用程序视为一个目录(directory)所构成的束(bundle)。束这个概念引入了一种方法,可以聚合应用程序资源、二进制文件和其他相关文件。




前言/序言
  参与iPhone破解开发社区这么久以来,我常常被问到一个问题,那就是:你觉得iPhoneSDK到底怎么样。对于购买了本书的读者,我需要花点工夫给出答案。简而言之,苹果公司的iPhone SDK带来了一些非常棒的高层功能,厘清了一种可怕的混乱局面。然而,深深埋藏在SDK怡人外表之下的,却是一组无序的、设计低劣的框架,但是这些低劣之物中的某些成员却又非常适用于一些SDK所不适合的领域。无疑,对于想要针对AppStore进行开发的人而言,依靠SDK已经足可以编写出质量优秀、功能强大的应用程序(若非如此,我也不会写这本书)。对于大多数希望开发出不错的软件的开发者来说,SDK所提供的接口已经足够了,不过大多数人并不清楚他们到底错过了哪些功能。而对那些在开源世界里成长起来的人来说,iPhone的SDK不过是沧海一粟。
  你现在可以了解到,开发者接口有两组:SDK提供的,以及苹果公司自己使用的。尽管这二者之间有一定重叠,但是在我的另外一本书iPhone Open Application Development中介绍的许多类与框架,都会是你闻所未闻的。你对它们闻所未闻,是因为它们并不存在于SDK当中。我们iPhone破解开发社区中的许多人通过直接破解iPhone的操作系统而发现了它们。我们经过日以周计的工作,导出类与符号表,不断进行出错查错的试验,最终拼凑出了iPhone用户界面包以及其他许多框架的“基因图谱”,其中包括许多现在仍然处于保密状态的接口。通过开源工具链构建iPhone软件的开发者,使用的正是这些底层API。我们发现,苹果公司的许多应用程序也同样正是利用了这些底层API,从而可以做到一些SDK根本不允许的行为。



回复即可获取下载地址:
游客,如果您要查看本帖隐藏内容请回复









微信扫一扫\订阅移动开发及APP推广热点资讯\公众号:Code4App

3

主题

158

帖子

3472

金钱

码皇

Rank: 8Rank: 8

发表于 2016-5-18 11:51:59 | 显示全部楼层
看看正需要啊,感谢楼主无私分享!

0

主题

9

帖子

32

金钱

初级码农

Rank: 1

发表于 2016-5-18 13:44:18 | 显示全部楼层
强烈支持楼主ing……

0

主题

18

帖子

130

金钱

程序猿

Rank: 2

发表于 2016-5-18 13:55:30 | 显示全部楼层
下载来学习学习
code4app热心网友  发表于 2016-5-18 17:11:39
:):):):):):):):):):)

1

主题

38

帖子

472

金钱

攻城狮

Rank: 3Rank: 3

发表于 2016-5-18 17:11:49 | 显示全部楼层
感谢楼主无私分享

0

主题

9

帖子

98

金钱

程序猿

Rank: 2

发表于 2016-5-18 17:13:08 | 显示全部楼层
强烈支持,给个赞

0

主题

17

帖子

137

金钱

程序猿

Rank: 2

发表于 2016-5-18 17:22:41 | 显示全部楼层
感谢分享,Code4App有你更精彩

0

主题

3

帖子

40

金钱

初级码农

Rank: 1

发表于 2016-5-18 17:29:10 | 显示全部楼层

0

主题

3

帖子

40

金钱

初级码农

Rank: 1

发表于 2016-5-18 17:29:35 | 显示全部楼层
感谢分享,Code4App有你更精彩
*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

关闭

每日头条

通过邮件订阅最新 Code4App 信息
上一条 /4 下一条

广告投放| Github|申请友链|手机版|Code4App ( 粤ICP备15117877号-1 )

快速回复 返回顶部 返回列表