为 iPhone 开发应用程序 (Part 1)

闫辉 2008-03-11 09:09:29
Apple 确实为 iPhone 应用的开发定了条与众不同的道路--如 Jobs 大嘴巴所说--iPhone 上八成不再有什么第三方 native code 了,唯有 web app 才是 iPhone 第三方应用的正道--不过我猜如果哪个 ISV 面子够硬的话还是能有 SDK 来写 native 应用的

Apple 的开发者网站 Developer Connection 上已经推出了 iPhone 部分。只有一个内容,就是 Web Development for iPhone。按照 Apple 的设想和许诺,开发者能够写出和 iPhone 内置应用在外观和功能上差不多的第三方程序–这是暗示内置程序亦是 web app 呢还是只是夸耀 apple 提供给第三方的开发能力使外人也能写出和内置的 native 程序同样等级的软件?这些第三方程序能与 iPhone 内置应用和服务无缝集成--包括拨打电话,发送 email 和在 Google Maps 上显示位置。

我想这种安排相比暴露一堆 API 的好处是:
- 引导了开发者把重心放到设计有创意的产品上,开发真正创新的有竞争力的应用,而不是继续鸡毛蒜皮的小修补,才是 iPhone 最需要的–大家可对 Windows Mobile 上 500 个第三方日历程序心有余悸?谁让 Microsoft 恨不得把自家牙缝里的东西都写进 MSDN 呢。对易用性大师 Apple 来说,暴露 API 似乎没有太多现实意义–出自这帮这帮家伙之手的 iPhone 内置应用基本没什么余地/缺陷留给第三方开发者填充或者弥补了,所以,你们不需要 OS 或者某种传统 framework 的 API 来再次开发,再所以,你们还是打起精神,为编写真正配得上 iPhone 的 cool app 整装待发吧。
- 再者,web app 开发好歹也算在标准接口上工作,绝大多数相关技术都是开放的,开发 iPhone 需要的参考资料–xml,html,javascript,rfc 里的协议等等等等–差不多全是 ISO,IEEE 等的标准。design house 为一百个手机写他妈的一百个的 phonebook 的黑暗日子总算有个头了– 哦,又忘了,iPhone 根本没打算让你为他重写 phonebook。

ADC 的 iPhone 开发准备内容只有两节:WebKit (或者 Safari,随便你) 和 Development Guidelines。WebKit 的内容不依 iPhone 的开发早就有了,不表。和其他手持系统上的开发不同,iPhone 上没有什么鸟 SDK 和 host 上的模拟器,如果说有的话,那 SDK 就是所有 web 开发相关标准–因为这是和 iPhone 打交道的接口,而模拟器就是 host 上的 Safari 啦,要不 Jobs 费劲地移植个 Safari Windows 版干嘛。
Guideline 是一对一和 iPhone 挂钩的东西,需要编写应用时阅读参考。不过先打个招呼,基于你的视角和观点,你会觉得 iPhone 上开发应用程序“居然沦落到”或者“终于进化到”这样的地步:If you are a seasoned web developer, there are probably just a few refinements you can make to ensure that your site looks great and works best on iPhone。

早先说了,在 Apple 的选择下,没有必要有类似 API 列表的 reference manual 了,因为 html,css 和 javascript 等内容本来就是开放的,所以只需说明应用与 iPhone 时的注意事项。
按 Apple 的表述,iPhone 的 Safari 和桌面系统 Safari 使用一样的 WebKit--这话其实言之不详,似是而非,虽然我们宁愿已是精确表述。换做老式应用开发,我们只需要知道系统底层机制的描述,再有文档可以查阅 API 变化(比如有无增减,参数类型含义有无变更)即可,而所谓使用同一 WebKit 并不明确,因为 WebKit 至少包含 WebCore 和 JavaScriptCore 两部分,细节颇多,随便挑个 DOM 对象比比,都有可能不同。

对开发者甚至一般 iPhone 用户来说,最重要的是,如 guideline 里一句话所说,It’s tempting to think that using an iPhone is like using a computer. But it isn’t. 体现在用户交互上,表现很明显。



通常的网页–其实是我们的电脑了–当然只考虑到最常用的交互设备是鼠标键盘等,iPhone 的输入设备–手指–在精确度,可识别性乃至可产生的 event 上不同于鼠标。guideline 上为此专门提供了 “Know Which Events You Can Handle” 和 “Design for Double Tap.”两节内容。不过当然记住,在 iPhone 那光滑性感的表面上游走的两根手指可没法实现什么复制粘贴,拖放和选中;另外,手指是有宽度的,设计过于密集的交互对象(比如网页上的超链接)会让人吐血的。

既然是些 Web app,那相关标准就要随时能涌上心头了,iPhone 伟大的 WebKit 引擎支持的标准“应该”和桌面 Safari 一样,包括:
* HTML 4.01
* XHTML 1.0
* CSS 2.1,部分 CSS 3.xx
* JavaScript 1.4, 包括 DOM 支持
* AJAX 技术, 包括 XMLHTTPRequest
又因为 Apple 让 iPhone 上的 WebKit 和桌面一样,所以 iPhone 会另类地不支持 WML (Wireless Markup Language),不过支持 XHTML mobile profile。开发适合 iPhone 浏览的页面和开发适用于通常浏览器的页面有很多详细之处,如果感兴趣,ADC 里也列出了相关参考资料。

下面,终于是有点入题的内容了–怎么实用 iPhone 上的服务。
电话:
1-408-555-5555
吐血,也可以理解,一切都是协议。这下好了,你连炫耀一下知道 MO call,MT call 的机会都没了。
Safari 也可以自动把一串数字解释成电话号码。

至于 mail 和 google map,和通常网页也无区别啦:mailto: 协议以及通常的 google map url 就行了。

在编写为 iPhone 优化的页面是,再一个参考是 Safari 发送的 agent 字符串:
Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3
和桌面平台的 Safari 很像,但是多了
platform 描述:(iPhone; U; CPU like Mac OS X; en)
mobile 版本:Version/3.0 Mobile/1A543a Safari/419.3

在使用 CSS 时,要考虑到 iPhone 只支持 screen –你没看错哈–而不支持 print 和 handheld media query–这些都是 CSS3 的特性。所以,编写 iPhone 优化的页面时,可以这样引用 css 文件:

使用 only 关键字。这样也不会影响其他浏览器。
...全文
767 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hawkzhao 2010-05-11
  • 打赏
  • 举报
回复
学习,想做IPHONE开发
A0_嘟嘟飞_0A 2008-07-10
  • 打赏
  • 举报
回复
是不是应该在题头上添加 Iphone Web应用程序开发呢?
UltraBejing 2008-04-30
  • 打赏
  • 举报
回复
有问题请先GOOGLE,BAIDU
x_y_qing 2008-04-21
  • 打赏
  • 举报
回复
学习....
l_wenb 2008-03-24
  • 打赏
  • 举报
回复
这方面知道的比较少!

帮顶!
学习!
Rayuu 2008-03-21
  • 打赏
  • 举报
回复
没有Native App?不会吧?Xcode 3.1的新建工程里第一项就是Iphone Application……
正想找个入门教程看看呢!
(共分4个part,请下载完4个part后再解压) 目录 第1章iPhone SDK 简介......1 1.1 苹果公司的iPhone SDK....1 1.2 组建iPhone 项目.....2 1.3 iPhone 应用程序组件.....3 1.3.1 应用程序文件夹层次结构.....3 1.3.2 可执行文件.....3 1.3.3 Info.plist 文件.....4 1.3.4 图标和默认图像.....5 1.3.5 XIB(NIB)文件.....5 1.3.6 应用程序束中不存在的文件.....5 1.3.7 沙盒.....6 1.4 平台限制.....6 1.4.1 存储限制.....6 1.4.2 数据访问限制.....7 1.4.3 内存限制.....7 1.4.4 交互限制.....7 1.4.5 电量限制.....7 1.4.6 应用程序限制.....8 1.4.7 用户行为限制.....8 1.5 SDK 限制.....8 1.6 编程范型.....9 1.6.1 面向对象编程.....9 1.6.2 模型—视图—控制器.....9 1.7 构建iPhone 应用程序主干.....15 1.8 Hello World 应用程序.....15 1.8.1 类.....17 1.8.2 代码.....18 1.8.3 关于示例代码和内存管理的 注意事项.....18 1.9 构建Hello World 应用程序.....19 1.9.1 创建iPhone 项目.....19 1.9.2 运行主干.....20 1.9.3 定制iPhone 项目.....20 1.9.4 编辑标识信息.....21 1.9.5 使用调试器.....21 1.10 苹果公司的iPhone 开发人员计划.....23 1.10.1 开发电话.....23 1.10.2 应用程序标识符.....23 1.11 从Xcode 到iPhone:Organizer 界面.....24 1.11.1 PROJECTS & SOURCES 列表.....25 1.11.2 DEVICES 列表.....25 1.11.3 Summary 选项卡.....25 1.11.4 Console 选项卡.....25 1.11.5 Crash Logs 选项卡.....25 1.11.6 Screenshot 选项卡.....25 1.11.7 关于限制(Tethering).....26 1.11.8 在iPhone 上测试应用程序.....26 1.11.9 编译以分发.....27 1.12 使用文档中未记录的API 调用.....28 1.13 Ad Hoc 分发.....28 1.14 小结.....29 第2章视图......30 2.1 UIView 和UIWindow...30 2.1.1 层次结构.....30 2.1.2 几何特征.....31 2.1.3 手势.....34 2.2 秘诀:添加递进式子视图.....34 2.3 秘诀:拖动视图.....36 2.3.1 UITouch...37 2.3.2 添加持久性.....39 2.4 秘诀:剪辑视图.....42 2.4.1 通过剪辑平衡触摸.....43 2.4.2 访问逐个像素值.....43 2.5 秘诀:检查多点触摸.....45 2.6 UIView 动画.....48 2.7 秘诀:淡入和淡出视图.....49 2.8 秘诀:交换视图.....50 2.9 秘诀:翻转视图.....52 2.10 秘诀:将CATransition 应用于层.....54 2.10.1 文档中未记录的动画类型.....54 2.10.2 通用Core Animation 调用.....56 2.11 秘诀:滑动视图.....57 2.12 秘诀:转换视图.....59 2.13 小结.....61 第3章视图控制器......63 3.1 视图管理.....63 3.1.1 核心类.....63 3.1.2 专用类.....64 3.1.3 创建UIViewController...64 3.2 使用Interface Builder 为UIView- Controller 构建视图.....66 3.2.1 温度转换器示例.....66 3.2.2 直接加载XIB 文件.....73 3.3 导航控制器.....73 3.3.1 设置导航控制器.....74 3.3.2 推入和弹出视图控制器.....74 3.3.3 导航项类.....75 3.4 秘诀:构建简单的双项菜单.....75 3.5 秘诀:添加分段控件.....77 3.6 秘诀:在导航栏中添加UIToolbar...79 3.7 秘诀:在视图控制器之间导航.....81 3.7.1 返回根.....83 3.7.2 加载视图控制器数组.....83 3.8 选项卡栏.....83 3.9 小结.....86 第4章警告用户......87 4.1 通过警告直接与用户对话.....87 4.1.1 记录结果.....88 4.1.2 构建警告.....88 4.1.3 显示警告.....89 4.2 秘诀:创建多行按钮显示.....90 4.3 秘诀:自动计时的无按钮警告.....91 4.4 秘诀:请求用户的文本输入.....92 4.5 秘诀:显示简单菜单.....94 4.6 “请稍候”:向用户显示进度.....95 4.7 秘诀:调用基本的文档中未记录的 UIProgressHUD...95 4.8 秘诀:使用UIActivity- IndicatorView...97 4.9 秘诀:构建UIProgressView...98 4.10 秘诀:添加自定义、可轻击的 覆盖层.....101 4.11 秘诀:构建下滑式警告.....104 4.12 秘诀:添加状态栏图像.....107 4.13 添加应用程序标记.....108 4.14 秘诀:简单的音频警告.....110 4.15 小结.....112 第5章基本表格......113 5.1 UITableView 和UITableView- Controller 简介.....113 5.1.1 创建表格.....113 5.1.2 UITableViewController 的 作用.....115 5.2 秘诀:创建简单的列表表格.....115 5.2.1 数据源函数.....116 5.2.2 重用单元格.....116 5.2.3 字体表格示例.....116 5.3 秘诀:创建基于表格的选择表.....118 5.4 秘诀:将图像加载到表格单元中.....122 5.5 秘诀:设置单元格的文本特性.....123 5.6 秘诀:删除单元格选择.....124 5.7 秘诀:创建复杂的单元格.....125 5.8 秘诀:创建选中的选择.....127 5.9 秘诀:删除单元格.....128 5.9.1 创建和显示删除控件.....130 5.9.2 关闭删除控件.....131 5.9.3 处理删除请求.....131 5.9.4 滑动单元格.....131 5.9.5 添加单元格.....131 5.10 秘诀:对单元格重新排序.....131 5.11 秘诀:使用公开.....132 5.12 小结.....134 第6章高级表格......135 6.1 秘诀:对表格选择进行分组.....135 6.1.1 构建基于部分的数据源.....139 6.1.2 添加部分标题.....139 6.2 秘诀:构建带索引的部分表格.....140 6.3 秘诀:定制单元格背景.....141 6.4 秘诀:创建蓝白交替的单元格.....145 6.5 秘诀:设置表格边框.....146 6.6 秘诀:添加耦合的单元格控件.....148 6.7 秘诀:构建多滚轮表格.....150 6.8 秘诀:使用UIDatePicker...153 6.9 秘诀:创建完全自定义的分组表格.....155 6.10 小结.....160 第7章媒体......161 7.1 秘诀:按照文件类型浏览Documents 文件夹.....161 7.2 加载和查看图像.....163 7.3 秘诀:显示小图像.....164 7.4 秘诀:使用UIWebVeiw 显示图像.....167 7.5 秘诀:浏览图像库.....169 7.6 秘诀:选择和定制相册中的图像.....171 7.7 秘诀:使用iPhone 照相机拍照.....174 7.8 处理iPhone 音频.....175 7.9 秘诀:使用Celestial 播放音频.....176 7.10 秘诀:使用媒体播放器实现音频和 视频重放.....178 7.11 秘诀:录制音频.....179 7.12 读入文本数据.....187 7.13 从备份文件还原媒体.....187 7.14 小结.....189 第8章控件......190 8.1 秘诀:构建简单的按钮.....190 8.1.1 UIButton 类.....191 8.1.2 构建自定义按钮.....192 8.1.3 玻璃按钮(glass button).....194 8.2 秘诀:向按钮添加动画元素.....194 8.3 秘诀:为按钮响应制作动画效果.....196 8.4 秘诀:定制开关.....197 8.5 秘诀:添加自定义滑块缩略图.....200 8.6 秘诀:关闭UITextField 键盘.....204 8.7 秘诀:关闭UITextView 键盘.....205 8.8 秘诀:向文本视图添加一个撤销 (Undo)按钮.....207 8.9 秘诀:创建一个基于文本视图的HTML 编辑器.....209 8.10 秘诀:构建一个交互搜索栏.....211 8.11 秘诀:添加标注(callout)视图.....213 8.12 添加一个页面指示器控件.....216 8.13 秘诀:定制工具栏.....218 8.14 小结.....221 第9章人物、地点和事件......223 9.1 地址簿框架.....223 9.1.1 Address Book UI.223 9.1.2 Address Book..224 9.2 秘诀:访问地址簿图像数据.....225 9.3 秘诀:显示地址簿信息.....227 9.4 秘诀:浏览地址簿.....228 9.4.1 (只)浏览电子邮件地址.....230 9.4.2 添加新的联系人.....230 9.5 Core Location..231 9.6 秘诀:Core Location 简介.....232 9.7 秘诀:将地理编码转化为地址.....235 9.8 秘诀:使用Core Location 数据访问 地图.....238 9.9 秘诀:访问核心设备信息.....240 9.10 秘诀:启用和禁用近程传感器.....241 9.11 秘诀:使用加速度将方向定位到 “向上”.....241 9.12 秘诀:使用加速度移动屏幕上的 对象.....243 9.13 小结.....246 第10章连接服务......247 10.1 秘诀:添加自定义设置束.....247 10.2 秘诀:使应用程序支持自定义URL 模式.....251 10.3 秘诀:检查网络状态.....253 10.3.1 测试网络状态.....253 10.3.2 恢复本地IP 地址.....254 10.3.3 查询站点的IP 地址.....255 10.3.4 检查站点可用性.....255 10.4 秘诀:与iPhone 数据库交互.....257 10.5 秘诀:将XML 转换为树.....259 10.6 秘诀:存储和检索密钥链项.....261 10.6.1 存储多个密钥链值.....265 10.6.2 密钥链持久化.....267 10.7 发送和接收文件.....267 10.8 秘诀:构建一个简单的基于Web 的 服务器.....268 10.9 即时消息传送.....272 10.10 小结.....272 第11章Cover Flow 编程......274 11.1 UICoverFlowLayer 类.....274 11.2 构建Cover Flow 视图.....276 11.3 构建Cover Flow 视图控制器.....278 11.3.1 Cover Flow 数据源方法.....279 11.3.2 Cover Flow 委托方法.....279 11.4 小结.....282 本书的目标读者 本书面向新的iPhone 开发人员,他们马上要开发实际项目,但面对着一个全新的SDK。虽然每位程 序员创建表格的目标和经验并不相同,但大多数人都需要在其开发工作中解决类似的任务:如何构建表格, 如何创建安全的密钥链条目,如何搜索地址簿,如何在视图之间切换,以及如何使用Core Location。 本书针对的正好是刚开始接触iPhone 编程的学习者。通过清晰、内容完备的示例,读者可以迅速起 步并开始高效率的开发。书中给出了经过测试的、现成可用的解决方案,程序员可以专注于应用程序的具 体部分,而不必为样本式的任务劳神。 本书的组织结构 本书针对iPhone 开发新手面对的大多数常见问题逐一提供了解决方案:布置界面元素,响应用户操 作,访问本地数据源并连接到因特网。本书按示例进行组织,因此代码拿来就可以使用,非常方便。程序 员可以在自己的项目中使用书中的源代码,然后根据需要进行定制。每章都将相关的任务归类在一起。读 者可以直接到所需的问题类别查找解决方案,而不需要总去琢磨哪些类或框架最适合当前问题。 下面概述了本书中各章的内容。 第1章:iPhone SDK 简介 第1章介绍iPhone SDK 并将iPhone 作为交付平台进行研究,包括平台的限制等。它对标准iPhone 应用程序进行了细化的分类,并指导你构建第一个Hello World 样式的示例。 第2章:视图 第2章介绍屏幕上的iPhone 视图及对象。你将了解如何对视图进行布置、创建和排序,以创建iPhone 应用程序的骨架。还会了解视图层次结构、几何方法和动画,以及用户如何通过触摸与视图进行交互。 第3章:视图控制器 iPhone 范型具体而言就是:小屏幕和大虚拟世界。在第3章中,你将探索各种UIView- Controller 类,使用这些类可以对用户所交互的虚拟空间进行扩大和排序。你将学习如何在iPhone 应用程序屏幕之 间导航时让这些强大的对象执行所有繁重的任务。 第4章:警告用户 iPhone 为用户提供了多种警告方式,从弹出对话框和进度栏到音频提示和状态栏更新。第4章展示如 何将这些指示功能构建到应用程序中,并扩展用户警告词汇库。 第5章:基本表格 表格提供了在小型受限设备上获得出色运行效果的交互类。iPhone 和iPod touch 随带的许多乃至大 部分应用程序都以表格为中心,包括Settings、YouTube、Stocks 和Weather。第5章展示iPhone 表 格的工作方式,哪些表格对于开发人员可用,以及如何在自己的程序中使用表格特性。 第6章:高级表格 iPhone 表格并不仅限于简单的滚动列表。你可以构建分为多个部分(各部分都有自己的标题)、带多 个滚动栏的表格。你可以添加开关之类的控件,创建半透明单元背景,以及添加自定义字体。第6章以第5 章的内容为基础,介绍可在iPhone 程序中使用的高级表格秘诀。 第7章:媒体 不负众望,iPhone 可以加载并显示各种格式的媒体。它可以播放音乐和电影,处理图像和Web 页面。 也可以呈现PDF 文档和相册。第7章介绍用多种方法将数据导入或下载到程序中,并使用iPhone 的多点 触摸界面显示这些数据。 第8章:控件 UIControl 类为许多iPhone 交互式元素提供了基础,包括按钮、文本字段、滑块和开关。第8章通过 已经或尚未用文档细致记录的SDK 调用来介绍控件及其用法。 第9章:人物、地点和事件 除了在任意计算机上都可看到的标准用户界面控件和媒体组件,iPhone SDK 还提供了大量特定于 iPhone 和iPod touch 交付的专门的开发人员解决方案。第9章介绍其中最有用的解决方案,包括地址簿 访问(人物)、Core Location(地点)和传感器(事件)。 第10章:连接服务 作为一种可与因特网连接的设备,iPhone 非常适用于订阅基于Web 的服务。苹果公司通过其在各类 网络计算服务方面的坚实基础以及支持技术丰富了这种平台。iPhone SDK 可处理套接字、密码密钥链、 SQL 访问、XML 处理等。第10章将探讨常用的网络计算技术,并提供能简化日常工作的方法。 第11章:Cover Flow 编程 虽然Cover Flow 并未正式包含在iPhone SDK 中,但它仍然提供了iPhone 体验中最优秀的特性之 一。使用Cover Flow,能为用户提供极为出色的视觉选择体验,这一点令标准的滚动列表望尘莫及。第11 章介绍Cover Flow 并展示如何在应用程序中使用它。__
(共分4个part,请下载完4个part后再解压) 目录 第1章iPhone SDK 简介......1 1.1 苹果公司的iPhone SDK....1 1.2 组建iPhone 项目.....2 1.3 iPhone 应用程序组件.....3 1.3.1 应用程序文件夹层次结构.....3 1.3.2 可执行文件.....3 1.3.3 Info.plist 文件.....4 1.3.4 图标和默认图像.....5 1.3.5 XIB(NIB)文件.....5 1.3.6 应用程序束中不存在的文件.....5 1.3.7 沙盒.....6 1.4 平台限制.....6 1.4.1 存储限制.....6 1.4.2 数据访问限制.....7 1.4.3 内存限制.....7 1.4.4 交互限制.....7 1.4.5 电量限制.....7 1.4.6 应用程序限制.....8 1.4.7 用户行为限制.....8 1.5 SDK 限制.....8 1.6 编程范型.....9 1.6.1 面向对象编程.....9 1.6.2 模型—视图—控制器.....9 1.7 构建iPhone 应用程序主干.....15 1.8 Hello World 应用程序.....15 1.8.1 类.....17 1.8.2 代码.....18 1.8.3 关于示例代码和内存管理的 注意事项.....18 1.9 构建Hello World 应用程序.....19 1.9.1 创建iPhone 项目.....19 1.9.2 运行主干.....20 1.9.3 定制iPhone 项目.....20 1.9.4 编辑标识信息.....21 1.9.5 使用调试器.....21 1.10 苹果公司的iPhone 开发人员计划.....23 1.10.1 开发电话.....23 1.10.2 应用程序标识符.....23 1.11 从Xcode 到iPhone:Organizer 界面.....24 1.11.1 PROJECTS & SOURCES 列表.....25 1.11.2 DEVICES 列表.....25 1.11.3 Summary 选项卡.....25 1.11.4 Console 选项卡.....25 1.11.5 Crash Logs 选项卡.....25 1.11.6 Screenshot 选项卡.....25 1.11.7 关于限制(Tethering).....26 1.11.8 在iPhone 上测试应用程序.....26 1.11.9 编译以分发.....27 1.12 使用文档中未记录的API 调用.....28 1.13 Ad Hoc 分发.....28 1.14 小结.....29 第2章视图......30 2.1 UIView 和UIWindow...30 2.1.1 层次结构.....30 2.1.2 几何特征.....31 2.1.3 手势.....34 2.2 秘诀:添加递进式子视图.....34 2.3 秘诀:拖动视图.....36 2.3.1 UITouch...37 2.3.2 添加持久性.....39 2.4 秘诀:剪辑视图.....42 2.4.1 通过剪辑平衡触摸.....43 2.4.2 访问逐个像素值.....43 2.5 秘诀:检查多点触摸.....45 2.6 UIView 动画.....48 2.7 秘诀:淡入和淡出视图.....49 2.8 秘诀:交换视图.....50 2.9 秘诀:翻转视图.....52 2.10 秘诀:将CATransition 应用于层.....54 2.10.1 文档中未记录的动画类型.....54 2.10.2 通用Core Animation 调用.....56 2.11 秘诀:滑动视图.....57 2.12 秘诀:转换视图.....59 2.13 小结.....61 第3章视图控制器......63 3.1 视图管理.....63 3.1.1 核心类.....63 3.1.2 专用类.....64 3.1.3 创建UIViewController...64 3.2 使用Interface Builder 为UIView- Controller 构建视图.....66 3.2.1 温度转换器示例.....66 3.2.2 直接加载XIB 文件.....73 3.3 导航控制器.....73 3.3.1 设置导航控制器.....74 3.3.2 推入和弹出视图控制器.....74 3.3.3 导航项类.....75 3.4 秘诀:构建简单的双项菜单.....75 3.5 秘诀:添加分段控件.....77 3.6 秘诀:在导航栏中添加UIToolbar...79 3.7 秘诀:在视图控制器之间导航.....81 3.7.1 返回根.....83 3.7.2 加载视图控制器数组.....83 3.8 选项卡栏.....83 3.9 小结.....86 第4章警告用户......87 4.1 通过警告直接与用户对话.....87 4.1.1 记录结果.....88 4.1.2 构建警告.....88 4.1.3 显示警告.....89 4.2 秘诀:创建多行按钮显示.....90 4.3 秘诀:自动计时的无按钮警告.....91 4.4 秘诀:请求用户的文本输入.....92 4.5 秘诀:显示简单菜单.....94 4.6 “请稍候”:向用户显示进度.....95 4.7 秘诀:调用基本的文档中未记录的 UIProgressHUD...95 4.8 秘诀:使用UIActivity- IndicatorView...97 4.9 秘诀:构建UIProgressView...98 4.10 秘诀:添加自定义、可轻击的 覆盖层.....101 4.11 秘诀:构建下滑式警告.....104 4.12 秘诀:添加状态栏图像.....107 4.13 添加应用程序标记.....108 4.14 秘诀:简单的音频警告.....110 4.15 小结.....112 第5章基本表格......113 5.1 UITableView 和UITableView- Controller 简介.....113 5.1.1 创建表格.....113 5.1.2 UITableViewController 的 作用.....115 5.2 秘诀:创建简单的列表表格.....115 5.2.1 数据源函数.....116 5.2.2 重用单元格.....116 5.2.3 字体表格示例.....116 5.3 秘诀:创建基于表格的选择表.....118 5.4 秘诀:将图像加载到表格单元中.....122 5.5 秘诀:设置单元格的文本特性.....123 5.6 秘诀:删除单元格选择.....124 5.7 秘诀:创建复杂的单元格.....125 5.8 秘诀:创建选中的选择.....127 5.9 秘诀:删除单元格.....128 5.9.1 创建和显示删除控件.....130 5.9.2 关闭删除控件.....131 5.9.3 处理删除请求.....131 5.9.4 滑动单元格.....131 5.9.5 添加单元格.....131 5.10 秘诀:对单元格重新排序.....131 5.11 秘诀:使用公开.....132 5.12 小结.....134 第6章高级表格......135 6.1 秘诀:对表格选择进行分组.....135 6.1.1 构建基于部分的数据源.....139 6.1.2 添加部分标题.....139 6.2 秘诀:构建带索引的部分表格.....140 6.3 秘诀:定制单元格背景.....141 6.4 秘诀:创建蓝白交替的单元格.....145 6.5 秘诀:设置表格边框.....146 6.6 秘诀:添加耦合的单元格控件.....148 6.7 秘诀:构建多滚轮表格.....150 6.8 秘诀:使用UIDatePicker...153 6.9 秘诀:创建完全自定义的分组表格.....155 6.10 小结.....160 第7章媒体......161 7.1 秘诀:按照文件类型浏览Documents 文件夹.....161 7.2 加载和查看图像.....163 7.3 秘诀:显示小图像.....164 7.4 秘诀:使用UIWebVeiw 显示图像.....167 7.5 秘诀:浏览图像库.....169 7.6 秘诀:选择和定制相册中的图像.....171 7.7 秘诀:使用iPhone 照相机拍照.....174 7.8 处理iPhone 音频.....175 7.9 秘诀:使用Celestial 播放音频.....176 7.10 秘诀:使用媒体播放器实现音频和 视频重放.....178 7.11 秘诀:录制音频.....179 7.12 读入文本数据.....187 7.13 从备份文件还原媒体.....187 7.14 小结.....189 第8章控件......190 8.1 秘诀:构建简单的按钮.....190 8.1.1 UIButton 类.....191 8.1.2 构建自定义按钮.....192 8.1.3 玻璃按钮(glass button).....194 8.2 秘诀:向按钮添加动画元素.....194 8.3 秘诀:为按钮响应制作动画效果.....196 8.4 秘诀:定制开关.....197 8.5 秘诀:添加自定义滑块缩略图.....200 8.6 秘诀:关闭UITextField 键盘.....204 8.7 秘诀:关闭UITextView 键盘.....205 8.8 秘诀:向文本视图添加一个撤销 (Undo)按钮.....207 8.9 秘诀:创建一个基于文本视图的HTML 编辑器.....209 8.10 秘诀:构建一个交互搜索栏.....211 8.11 秘诀:添加标注(callout)视图.....213 8.12 添加一个页面指示器控件.....216 8.13 秘诀:定制工具栏.....218 8.14 小结.....221 第9章人物、地点和事件......223 9.1 地址簿框架.....223 9.1.1 Address Book UI.223 9.1.2 Address Book..224 9.2 秘诀:访问地址簿图像数据.....225 9.3 秘诀:显示地址簿信息.....227 9.4 秘诀:浏览地址簿.....228 9.4.1 (只)浏览电子邮件地址.....230 9.4.2 添加新的联系人.....230 9.5 Core Location..231 9.6 秘诀:Core Location 简介.....232 9.7 秘诀:将地理编码转化为地址.....235 9.8 秘诀:使用Core Location 数据访问 地图.....238 9.9 秘诀:访问核心设备信息.....240 9.10 秘诀:启用和禁用近程传感器.....241 9.11 秘诀:使用加速度将方向定位到 “向上”.....241 9.12 秘诀:使用加速度移动屏幕上的 对象.....243 9.13 小结.....246 第10章连接服务......247 10.1 秘诀:添加自定义设置束.....247 10.2 秘诀:使应用程序支持自定义URL 模式.....251 10.3 秘诀:检查网络状态.....253 10.3.1 测试网络状态.....253 10.3.2 恢复本地IP 地址.....254 10.3.3 查询站点的IP 地址.....255 10.3.4 检查站点可用性.....255 10.4 秘诀:与iPhone 数据库交互.....257 10.5 秘诀:将XML 转换为树.....259 10.6 秘诀:存储和检索密钥链项.....261 10.6.1 存储多个密钥链值.....265 10.6.2 密钥链持久化.....267 10.7 发送和接收文件.....267 10.8 秘诀:构建一个简单的基于Web 的 服务器.....268 10.9 即时消息传送.....272 10.10 小结.....272 第11章Cover Flow 编程......274 11.1 UICoverFlowLayer 类.....274 11.2 构建Cover Flow 视图.....276 11.3 构建Cover Flow 视图控制器.....278 11.3.1 Cover Flow 数据源方法.....279 11.3.2 Cover Flow 委托方法.....279 11.4 小结.....282 本书的目标读者 本书面向新的iPhone 开发人员,他们马上要开发实际项目,但面对着一个全新的SDK。虽然每位程 序员创建表格的目标和经验并不相同,但大多数人都需要在其开发工作中解决类似的任务:如何构建表格, 如何创建安全的密钥链条目,如何搜索地址簿,如何在视图之间切换,以及如何使用Core Location。 本书针对的正好是刚开始接触iPhone 编程的学习者。通过清晰、内容完备的示例,读者可以迅速起 步并开始高效率的开发。书中给出了经过测试的、现成可用的解决方案,程序员可以专注于应用程序的具 体部分,而不必为样本式的任务劳神。 本书的组织结构 本书针对iPhone 开发新手面对的大多数常见问题逐一提供了解决方案:布置界面元素,响应用户操 作,访问本地数据源并连接到因特网。本书按示例进行组织,因此代码拿来就可以使用,非常方便。程序 员可以在自己的项目中使用书中的源代码,然后根据需要进行定制。每章都将相关的任务归类在一起。读 者可以直接到所需的问题类别查找解决方案,而不需要总去琢磨哪些类或框架最适合当前问题。 下面概述了本书中各章的内容。 第1章:iPhone SDK 简介 第1章介绍iPhone SDK 并将iPhone 作为交付平台进行研究,包括平台的限制等。它对标准iPhone 应用程序进行了细化的分类,并指导你构建第一个Hello World 样式的示例。 第2章:视图 第2章介绍屏幕上的iPhone 视图及对象。你将了解如何对视图进行布置、创建和排序,以创建iPhone 应用程序的骨架。还会了解视图层次结构、几何方法和动画,以及用户如何通过触摸与视图进行交互。 第3章:视图控制器 iPhone 范型具体而言就是:小屏幕和大虚拟世界。在第3章中,你将探索各种UIView- Controller 类,使用这些类可以对用户所交互的虚拟空间进行扩大和排序。你将学习如何在iPhone 应用程序屏幕之 间导航时让这些强大的对象执行所有繁重的任务。 第4章:警告用户 iPhone 为用户提供了多种警告方式,从弹出对话框和进度栏到音频提示和状态栏更新。第4章展示如 何将这些指示功能构建到应用程序中,并扩展用户警告词汇库。 第5章:基本表格 表格提供了在小型受限设备上获得出色运行效果的交互类。iPhone 和iPod touch 随带的许多乃至大 部分应用程序都以表格为中心,包括Settings、YouTube、Stocks 和Weather。第5章展示iPhone 表 格的工作方式,哪些表格对于开发人员可用,以及如何在自己的程序中使用表格特性。 第6章:高级表格 iPhone 表格并不仅限于简单的滚动列表。你可以构建分为多个部分(各部分都有自己的标题)、带多 个滚动栏的表格。你可以添加开关之类的控件,创建半透明单元背景,以及添加自定义字体。第6章以第5 章的内容为基础,介绍可在iPhone 程序中使用的高级表格秘诀。 第7章:媒体 不负众望,iPhone 可以加载并显示各种格式的媒体。它可以播放音乐和电影,处理图像和Web 页面。 也可以呈现PDF 文档和相册。第7章介绍用多种方法将数据导入或下载到程序中,并使用iPhone 的多点 触摸界面显示这些数据。 第8章:控件 UIControl 类为许多iPhone 交互式元素提供了基础,包括按钮、文本字段、滑块和开关。第8章通过 已经或尚未用文档细致记录的SDK 调用来介绍控件及其用法。 第9章:人物、地点和事件 除了在任意计算机上都可看到的标准用户界面控件和媒体组件,iPhone SDK 还提供了大量特定于 iPhone 和iPod touch 交付的专门的开发人员解决方案。第9章介绍其中最有用的解决方案,包括地址簿 访问(人物)、Core Location(地点)和传感器(事件)。 第10章:连接服务 作为一种可与因特网连接的设备,iPhone 非常适用于订阅基于Web 的服务。苹果公司通过其在各类 网络计算服务方面的坚实基础以及支持技术丰富了这种平台。iPhone SDK 可处理套接字、密码密钥链、 SQL 访问、XML 处理等。第10章将探讨常用的网络计算技术,并提供能简化日常工作的方法。 第11章:Cover Flow 编程 虽然Cover Flow 并未正式包含在iPhone SDK 中,但它仍然提供了iPhone 体验中最优秀的特性之 一。使用Cover Flow,能为用户提供极为出色的视觉选择体验,这一点令标准的滚动列表望尘莫及。第11 章介绍Cover Flow 并展示如何在应用程序中使用它。__
(共分4个part,请下载完4个part后再解压) 目录 第1章iPhone SDK 简介......1 1.1 苹果公司的iPhone SDK....1 1.2 组建iPhone 项目.....2 1.3 iPhone 应用程序组件.....3 1.3.1 应用程序文件夹层次结构.....3 1.3.2 可执行文件.....3 1.3.3 Info.plist 文件.....4 1.3.4 图标和默认图像.....5 1.3.5 XIB(NIB)文件.....5 1.3.6 应用程序束中不存在的文件.....5 1.3.7 沙盒.....6 1.4 平台限制.....6 1.4.1 存储限制.....6 1.4.2 数据访问限制.....7 1.4.3 内存限制.....7 1.4.4 交互限制.....7 1.4.5 电量限制.....7 1.4.6 应用程序限制.....8 1.4.7 用户行为限制.....8 1.5 SDK 限制.....8 1.6 编程范型.....9 1.6.1 面向对象编程.....9 1.6.2 模型—视图—控制器.....9 1.7 构建iPhone 应用程序主干.....15 1.8 Hello World 应用程序.....15 1.8.1 类.....17 1.8.2 代码.....18 1.8.3 关于示例代码和内存管理的 注意事项.....18 1.9 构建Hello World 应用程序.....19 1.9.1 创建iPhone 项目.....19 1.9.2 运行主干.....20 1.9.3 定制iPhone 项目.....20 1.9.4 编辑标识信息.....21 1.9.5 使用调试器.....21 1.10 苹果公司的iPhone 开发人员计划.....23 1.10.1 开发电话.....23 1.10.2 应用程序标识符.....23 1.11 从Xcode 到iPhone:Organizer 界面.....24 1.11.1 PROJECTS & SOURCES 列表.....25 1.11.2 DEVICES 列表.....25 1.11.3 Summary 选项卡.....25 1.11.4 Console 选项卡.....25 1.11.5 Crash Logs 选项卡.....25 1.11.6 Screenshot 选项卡.....25 1.11.7 关于限制(Tethering).....26 1.11.8 在iPhone 上测试应用程序.....26 1.11.9 编译以分发.....27 1.12 使用文档中未记录的API 调用.....28 1.13 Ad Hoc 分发.....28 1.14 小结.....29 第2章视图......30 2.1 UIView 和UIWindow...30 2.1.1 层次结构.....30 2.1.2 几何特征.....31 2.1.3 手势.....34 2.2 秘诀:添加递进式子视图.....34 2.3 秘诀:拖动视图.....36 2.3.1 UITouch...37 2.3.2 添加持久性.....39 2.4 秘诀:剪辑视图.....42 2.4.1 通过剪辑平衡触摸.....43 2.4.2 访问逐个像素值.....43 2.5 秘诀:检查多点触摸.....45 2.6 UIView 动画.....48 2.7 秘诀:淡入和淡出视图.....49 2.8 秘诀:交换视图.....50 2.9 秘诀:翻转视图.....52 2.10 秘诀:将CATransition 应用于层.....54 2.10.1 文档中未记录的动画类型.....54 2.10.2 通用Core Animation 调用.....56 2.11 秘诀:滑动视图.....57 2.12 秘诀:转换视图.....59 2.13 小结.....61 第3章视图控制器......63 3.1 视图管理.....63 3.1.1 核心类.....63 3.1.2 专用类.....64 3.1.3 创建UIViewController...64 3.2 使用Interface Builder 为UIView- Controller 构建视图.....66 3.2.1 温度转换器示例.....66 3.2.2 直接加载XIB 文件.....73 3.3 导航控制器.....73 3.3.1 设置导航控制器.....74 3.3.2 推入和弹出视图控制器.....74 3.3.3 导航项类.....75 3.4 秘诀:构建简单的双项菜单.....75 3.5 秘诀:添加分段控件.....77 3.6 秘诀:在导航栏中添加UIToolbar...79 3.7 秘诀:在视图控制器之间导航.....81 3.7.1 返回根.....83 3.7.2 加载视图控制器数组.....83 3.8 选项卡栏.....83 3.9 小结.....86 第4章警告用户......87 4.1 通过警告直接与用户对话.....87 4.1.1 记录结果.....88 4.1.2 构建警告.....88 4.1.3 显示警告.....89 4.2 秘诀:创建多行按钮显示.....90 4.3 秘诀:自动计时的无按钮警告.....91 4.4 秘诀:请求用户的文本输入.....92 4.5 秘诀:显示简单菜单.....94 4.6 “请稍候”:向用户显示进度.....95 4.7 秘诀:调用基本的文档中未记录的 UIProgressHUD...95 4.8 秘诀:使用UIActivity- IndicatorView...97 4.9 秘诀:构建UIProgressView...98 4.10 秘诀:添加自定义、可轻击的 覆盖层.....101 4.11 秘诀:构建下滑式警告.....104 4.12 秘诀:添加状态栏图像.....107 4.13 添加应用程序标记.....108 4.14 秘诀:简单的音频警告.....110 4.15 小结.....112 第5章基本表格......113 5.1 UITableView 和UITableView- Controller 简介.....113 5.1.1 创建表格.....113 5.1.2 UITableViewController 的 作用.....115 5.2 秘诀:创建简单的列表表格.....115 5.2.1 数据源函数.....116 5.2.2 重用单元格.....116 5.2.3 字体表格示例.....116 5.3 秘诀:创建基于表格的选择表.....118 5.4 秘诀:将图像加载到表格单元中.....122 5.5 秘诀:设置单元格的文本特性.....123 5.6 秘诀:删除单元格选择.....124 5.7 秘诀:创建复杂的单元格.....125 5.8 秘诀:创建选中的选择.....127 5.9 秘诀:删除单元格.....128 5.9.1 创建和显示删除控件.....130 5.9.2 关闭删除控件.....131 5.9.3 处理删除请求.....131 5.9.4 滑动单元格.....131 5.9.5 添加单元格.....131 5.10 秘诀:对单元格重新排序.....131 5.11 秘诀:使用公开.....132 5.12 小结.....134 第6章高级表格......135 6.1 秘诀:对表格选择进行分组.....135 6.1.1 构建基于部分的数据源.....139 6.1.2 添加部分标题.....139 6.2 秘诀:构建带索引的部分表格.....140 6.3 秘诀:定制单元格背景.....141 6.4 秘诀:创建蓝白交替的单元格.....145 6.5 秘诀:设置表格边框.....146 6.6 秘诀:添加耦合的单元格控件.....148 6.7 秘诀:构建多滚轮表格.....150 6.8 秘诀:使用UIDatePicker...153 6.9 秘诀:创建完全自定义的分组表格.....155 6.10 小结.....160 第7章媒体......161 7.1 秘诀:按照文件类型浏览Documents 文件夹.....161 7.2 加载和查看图像.....163 7.3 秘诀:显示小图像.....164 7.4 秘诀:使用UIWebVeiw 显示图像.....167 7.5 秘诀:浏览图像库.....169 7.6 秘诀:选择和定制相册中的图像.....171 7.7 秘诀:使用iPhone 照相机拍照.....174 7.8 处理iPhone 音频.....175 7.9 秘诀:使用Celestial 播放音频.....176 7.10 秘诀:使用媒体播放器实现音频和 视频重放.....178 7.11 秘诀:录制音频.....179 7.12 读入文本数据.....187 7.13 从备份文件还原媒体.....187 7.14 小结.....189 第8章控件......190 8.1 秘诀:构建简单的按钮.....190 8.1.1 UIButton 类.....191 8.1.2 构建自定义按钮.....192 8.1.3 玻璃按钮(glass button).....194 8.2 秘诀:向按钮添加动画元素.....194 8.3 秘诀:为按钮响应制作动画效果.....196 8.4 秘诀:定制开关.....197 8.5 秘诀:添加自定义滑块缩略图.....200 8.6 秘诀:关闭UITextField 键盘.....204 8.7 秘诀:关闭UITextView 键盘.....205 8.8 秘诀:向文本视图添加一个撤销 (Undo)按钮.....207 8.9 秘诀:创建一个基于文本视图的HTML 编辑器.....209 8.10 秘诀:构建一个交互搜索栏.....211 8.11 秘诀:添加标注(callout)视图.....213 8.12 添加一个页面指示器控件.....216 8.13 秘诀:定制工具栏.....218 8.14 小结.....221 第9章人物、地点和事件......223 9.1 地址簿框架.....223 9.1.1 Address Book UI.223 9.1.2 Address Book..224 9.2 秘诀:访问地址簿图像数据.....225 9.3 秘诀:显示地址簿信息.....227 9.4 秘诀:浏览地址簿.....228 9.4.1 (只)浏览电子邮件地址.....230 9.4.2 添加新的联系人.....230 9.5 Core Location..231 9.6 秘诀:Core Location 简介.....232 9.7 秘诀:将地理编码转化为地址.....235 9.8 秘诀:使用Core Location 数据访问 地图.....238 9.9 秘诀:访问核心设备信息.....240 9.10 秘诀:启用和禁用近程传感器.....241 9.11 秘诀:使用加速度将方向定位到 “向上”.....241 9.12 秘诀:使用加速度移动屏幕上的 对象.....243 9.13 小结.....246 第10章连接服务......247 10.1 秘诀:添加自定义设置束.....247 10.2 秘诀:使应用程序支持自定义URL 模式.....251 10.3 秘诀:检查网络状态.....253 10.3.1 测试网络状态.....253 10.3.2 恢复本地IP 地址.....254 10.3.3 查询站点的IP 地址.....255 10.3.4 检查站点可用性.....255 10.4 秘诀:与iPhone 数据库交互.....257 10.5 秘诀:将XML 转换为树.....259 10.6 秘诀:存储和检索密钥链项.....261 10.6.1 存储多个密钥链值.....265 10.6.2 密钥链持久化.....267 10.7 发送和接收文件.....267 10.8 秘诀:构建一个简单的基于Web 的 服务器.....268 10.9 即时消息传送.....272 10.10 小结.....272 第11章Cover Flow 编程......274 11.1 UICoverFlowLayer 类.....274 11.2 构建Cover Flow 视图.....276 11.3 构建Cover Flow 视图控制器.....278 11.3.1 Cover Flow 数据源方法.....279 11.3.2 Cover Flow 委托方法.....279 11.4 小结.....282 本书的目标读者 本书面向新的iPhone 开发人员,他们马上要开发实际项目,但面对着一个全新的SDK。虽然每位程 序员创建表格的目标和经验并不相同,但大多数人都需要在其开发工作中解决类似的任务:如何构建表格, 如何创建安全的密钥链条目,如何搜索地址簿,如何在视图之间切换,以及如何使用Core Location。 本书针对的正好是刚开始接触iPhone 编程的学习者。通过清晰、内容完备的示例,读者可以迅速起 步并开始高效率的开发。书中给出了经过测试的、现成可用的解决方案,程序员可以专注于应用程序的具 体部分,而不必为样本式的任务劳神。 本书的组织结构 本书针对iPhone 开发新手面对的大多数常见问题逐一提供了解决方案:布置界面元素,响应用户操 作,访问本地数据源并连接到因特网。本书按示例进行组织,因此代码拿来就可以使用,非常方便。程序 员可以在自己的项目中使用书中的源代码,然后根据需要进行定制。每章都将相关的任务归类在一起。读 者可以直接到所需的问题类别查找解决方案,而不需要总去琢磨哪些类或框架最适合当前问题。 下面概述了本书中各章的内容。 第1章:iPhone SDK 简介 第1章介绍iPhone SDK 并将iPhone 作为交付平台进行研究,包括平台的限制等。它对标准iPhone 应用程序进行了细化的分类,并指导你构建第一个Hello World 样式的示例。 第2章:视图 第2章介绍屏幕上的iPhone 视图及对象。你将了解如何对视图进行布置、创建和排序,以创建iPhone 应用程序的骨架。还会了解视图层次结构、几何方法和动画,以及用户如何通过触摸与视图进行交互。 第3章:视图控制器 iPhone 范型具体而言就是:小屏幕和大虚拟世界。在第3章中,你将探索各种UIView- Controller 类,使用这些类可以对用户所交互的虚拟空间进行扩大和排序。你将学习如何在iPhone 应用程序屏幕之 间导航时让这些强大的对象执行所有繁重的任务。 第4章:警告用户 iPhone 为用户提供了多种警告方式,从弹出对话框和进度栏到音频提示和状态栏更新。第4章展示如 何将这些指示功能构建到应用程序中,并扩展用户警告词汇库。 第5章:基本表格 表格提供了在小型受限设备上获得出色运行效果的交互类。iPhone 和iPod touch 随带的许多乃至大 部分应用程序都以表格为中心,包括Settings、YouTube、Stocks 和Weather。第5章展示iPhone 表 格的工作方式,哪些表格对于开发人员可用,以及如何在自己的程序中使用表格特性。 第6章:高级表格 iPhone 表格并不仅限于简单的滚动列表。你可以构建分为多个部分(各部分都有自己的标题)、带多 个滚动栏的表格。你可以添加开关之类的控件,创建半透明单元背景,以及添加自定义字体。第6章以第5 章的内容为基础,介绍可在iPhone 程序中使用的高级表格秘诀。 第7章:媒体 不负众望,iPhone 可以加载并显示各种格式的媒体。它可以播放音乐和电影,处理图像和Web 页面。 也可以呈现PDF 文档和相册。第7章介绍用多种方法将数据导入或下载到程序中,并使用iPhone 的多点 触摸界面显示这些数据。 第8章:控件 UIControl 类为许多iPhone 交互式元素提供了基础,包括按钮、文本字段、滑块和开关。第8章通过 已经或尚未用文档细致记录的SDK 调用来介绍控件及其用法。 第9章:人物、地点和事件 除了在任意计算机上都可看到的标准用户界面控件和媒体组件,iPhone SDK 还提供了大量特定于 iPhone 和iPod touch 交付的专门的开发人员解决方案。第9章介绍其中最有用的解决方案,包括地址簿 访问(人物)、Core Location(地点)和传感器(事件)。 第10章:连接服务 作为一种可与因特网连接的设备,iPhone 非常适用于订阅基于Web 的服务。苹果公司通过其在各类 网络计算服务方面的坚实基础以及支持技术丰富了这种平台。iPhone SDK 可处理套接字、密码密钥链、 SQL 访问、XML 处理等。第10章将探讨常用的网络计算技术,并提供能简化日常工作的方法。 第11章:Cover Flow 编程 虽然Cover Flow 并未正式包含在iPhone SDK 中,但它仍然提供了iPhone 体验中最优秀的特性之 一。使用Cover Flow,能为用户提供极为出色的视觉选择体验,这一点令标准的滚动列表望尘莫及。第11 章介绍Cover Flow 并展示如何在应用程序中使用它。__

29,041

社区成员

发帖
与我相关
我的任务
社区描述
主要讨论与iOS相关的软件和技术
社区管理员
  • iOS
  • 大熊猫侯佩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧