iOS4编程入门经典

《iOS 4编程入门经典》第Ⅰ部分入门第1章iOS 4编程快速入门···3 1.1获取iPhone SDK ····· 3 1.2 iPhone SDK的组件···· 5 1.2.1 Xcode ····· 5 1.2.2 iPhone Simulator ····· 7 1.2.3 Interface Builder ···· 10 1.2.4 Instruments ··· 11 1.3 iPhone OS架构概述···· 11 1.4起步前需要了解的一些信息···· 13 1.4.1 iPhone OS的版本····· 13 1.4.2在真实设备上进行测试····· 14 1.4.3屏幕分辨率····· 14 1.5小结····· 15第2章编写第一个“Hello World!”应用程序·····16 2.1 Xcode快速起步···· 16 2.1.1使用Interface Builder ····· 18 2.1.2编写代码··· 22 2.2定制应用程序图标····· 23 2.3显示启动画面···· 25 2.4小结····· 27第3章视图、插座变量与动作····28 3.1插座变量和动作··· 28 3.2使用视图··· 34 3.2.1使用警告视图···· 35 3.2.2使用动作表单···· 37 3.2.3页面控件与图像视图···· 39 3.2.4使用Web视图···· 46 3.3使用代码动态添加视图··· 48 3.4理解视图层次结构····· 51 3.5小结····· 52第4章视图控制器····54 4.1 View-based Application模板····· 54 4.2 Window-based Application模板··· 64 4.2.1以编程的方式添加视图控制器和视图···· 69 4.2.2创建并连接动作··· 72 4.2.3切换视图窗口···· 75 4.2.4为视图窗口切换添加动画··· 77 4.3 Split View-based Application模板··· 79 4.4 Tab Bar Application模板····· 96 4.5小结··· 101第5章iPhone和iPad的多平台支持···· 103 5.1方法1:修改设备目标设置····· 103 5.2方法2:创建Universal应用程序··· 110 5.3方法3:维护两个代码库··· 116 5.4选择方法···· 118 5.5小结··· 119第6章键盘输入····· 120 6.1使用键盘···· 120 6.2定制输入类型····· 121 6.2.1隐藏键盘···· 122 6.2.2当视图加载完毕后自动显示键盘···· 127 6.3检测键盘是否可见··· 127 6.3.1使用Scroll View ····· 128 6.3.2显示键盘时滚动视图····· 131 6.4小结··· 136第7章屏幕旋转····· 138 7.1响应设备旋转····· 138 7.1.1不同类型的屏幕方向····· 140 7.1.2处理旋转···· 141 7.2以编程的方式旋转屏幕···· 145 7.2.1在运行期间旋转屏幕····· 145 7.2.2当加载时在指定的方向上显示Vi ew窗口··· 146 7.3小结··· 146第Ⅱ部分显示和持久化数据第8章使用表视图···· 151 8.1简单的表视图····· 151 8.1.1添加Header与Footer ···· 156 8.1.2添加图像···· 157 8.1.3显示所选项··· 158 8.1.4缩进··· 160 8.1.5修改行高···· 161 8.2在Navigation-based Application中使用表视图··· 162 8.3分节显示···· 162 8.3.1添加索引···· 169 8.3.2添加搜索功能····· 169 8.3.3详情显示与选取标记····· 180 8.3.4导航到另外一个View窗口··· 181 8.4小结··· 187第9章应用程序首选项···· 188 9.1创建应用程序首选项····· 188 9.2以编程的方式访问设置值··· 194 9.2.1加载设置值··· 198 9.2.2重置首选项设置值··· 200 9.2.3保存设置值··· 201 9.3小结··· 202第10章文件处理····· 204 10.1理解应用程序文件夹····· 204 10.1.1使用Documents与Library文件夹···· 205 10.1.2将文件存储到临时文件夹中··· 209 10.2使用属性列表····· 209 10.3复制打包的资源···· 216 10.4小结··· 217第11章使用SQLite3进行数据库存储····· 219 11.1使用SQLite3 ····· 219 11.2创建并打开数据库··· 221 11.2.1检查创建的数据库····· 223 11.2.2创建表···· 223 11.2.3插入记录··· 224 11.2.4绑定变量··· 226 11.2.5检索记录··· 228 11.3在应用程序中打包SQLite数据库····· 230 11.4小结··· 232第Ⅲ部分iOS 4高级编程技术第12章简单动画和视频播放····· 235 12.1使用NSTimer类····· 235 12.2变换视图···· 241 12.2.1平移····· 242 12.2.2旋转····· 244 12.2.3缩放····· 246 12.3为一系列图像增加动画效果··· 246 12.4在iPhone中播放视频··· 248 12.5小结··· 251第13章访问内置应用程序···· 253 13.1发送e-mail ····· 253 13.1.1调用Safari ···· 258 13.1.2调用拨号程序···· 259 13.1.3调用SMS ··· 259 13.2访问照相机与照片库····· 261 13.2.1访问照片库····· 261 13.2.2访问照相机····· 270 13.3小结··· 273第14章手势识别····· 275 14.1识别手势···· 275 14.1.1轻拍····· 276 14.1.2捏拉····· 280 14.1.3旋转····· 282 14.1.4摇动或拖曳····· 285 14.1.5滑动····· 287 14.1.6长按····· 292 14.2检测触摸···· 295 14.2.1检测单点触摸···· 296 14.2.2检测多点触摸···· 300 14.2.3实现捏拉手势···· 302 14.2.4实现拖曳手势···· 308 14.3小结··· 310第15章访问加速计···· 312 15.1使用加速计··· 312 15.2可视化加速计数据··· 315 15.3使用Shake API检测摇动··· 318 15.4小结··· 324第Ⅳ部分网络编程技术第16章Web服务···· 327 16.1使用XML Web服务的基础知识··· 327 16.1.1使用SOAP 1.1 ··· 329 16.1.2使用SOAP 1.2 ··· 330 16.2在iPhone应用程序中使用Web服务··· 331 16.3解析XML响应···· 337 16.4小结··· 341第17章蓝牙编程····· 343 17.1使用Game Kit框架···· 343 17.1.1搜索对等设备···· 343 17.1.2发送和接收数据··· 350 17.2实现语音聊天····· 352 17.3小结··· 359第18章Bonjour编程····· 361 18.1创建应用程序····· 361 18.2发布服务···· 362 18.3搜索服务···· 365 18.4小结··· 371第19章Apple推送通知服务···· 373 19.1生成证书请求····· 374 19.2生成开发证书····· 375 19.3创建应用程序ID ···· 378 19.3.1针对推送通知配置App ID····· 380 19.3.2创建Provisioning Profile ··· 382 19.3.3在设备上安装Provisioning Profile ···· 384 19.4创建iPhone应用程序··· 384 19.5创建推送通知提供者····· 388 19.6小结··· 391第20章显示地图····· 392 20.1使用Map Kit框架显示地图和监视变化···· 392 20.2获得位置数据····· 397 20.2.1使用地图显示位置····· 402 20.2.2获取方向信息···· 405 20.2.3旋转地图··· 409 20.2.4显示注记··· 414 20.2.5逆地理编码····· 418 20.2.6显示箭头按钮···· 422 20.3小结··· 424第21章后台应用程序··· 426 21.1理解iPhone中的后台执行···· 426 21.1.1检查不同的应用程序状态····· 427 21.1.2禁用后台模式···· 429 21.1.3检测多任务支持··· 431 21.1.4在后台跟踪位置··· 431 21.1.5使位置应用程序更加节能····· 435 21.2本地通知···· 437 21.3小结··· 443 ### iOS4编程入门经典知识点概览####第1章iOS 4编程快速入门- **获取iPhone SDK**:为了开始iOS应用开发之旅,你需要下载并安装iPhone SDK(软件开发工具包)。这通常通过访问Apple Developer网站来完成。安装完成后,SDK会包含一系列工具和文档,帮助你构建和调试iOS应用程序。 - **iPhone SDK的组件**: - **Xcode**:Xcode是主要的集成开发环境(IDE),用于编写和调试iOS应用程序。它包含了编译器、模拟器和其他开发工具。 - **iPhone Simulator**:iPhone Simulator是一个模拟真实iPhone环境的软件,允许开发者在计算机上测试他们的应用程序,无需实际设备。 - **Interface Builder**:Interface Builder是Xcode的一部分,用于构建用户界面。它采用拖拽方式,便于布局设计。 - **Instruments**:Instruments是一款性能分析工具,可以帮助开发者识别并解决性能瓶颈问题。 - **iPhone OS架构概述**:本节简要介绍了iPhone OS的层次结构及其关键组件,包括Cocoa Touch层、Media层、Core Services层和Core OS层。 - **起步前需要了解的一些信息**:这部分内容覆盖了iOS的版本历史、如何在真实设备上测试应用以及不同设备的屏幕分辨率等基础知识。 ####第2章编写第一个“Hello World!”应用程序- **Xcode快速起步**:这一节详细介绍了如何使用Xcode创建一个新的项目,并编写简单的“Hello World”程序。 - **定制应用程序图标**:解释了如何为应用程序添加图标,这是一个简单但重要的步骤,因为图标是用户在主屏幕上看到的第一件事。 - **显示启动画面**:引导读者了解如何设置应用程序的启动画面,即用户首次打开应用时看到的画面。 ####第3章视图、插座变量与动作- **插座变量和动作**:这部分详细阐述了插座变量和动作的概念,插座变量是用于连接用户界面元素与代码的方法,而动作则定义了当用户与UI交互时应执行的操作。 - **使用视图**:介绍了几种不同类型的视图,例如警告视图、动作表单、页面控件和Web视图,并展示了如何在应用中使用它们。 - **理解视图层次结构**:解释了视图之间的层次关系,这对于管理复杂的用户界面至关重要。 ####第4章视图控制器- **View-based Application模板**:探讨了使用视图控制器构建应用的方法,特别是如何利用预设的视图模板。 - **Window-based Application模板**:讨论了基于窗口的应用模板,并提供了编程方式添加视图控制器和视图的具体步骤。 - **Split View-based Application模板**:介绍了如何使用分屏视图来构建适用于iPad的应用程序。 - **Tab Bar Application模板**:讲解了如何创建带有标签栏的应用程序,这种类型的界面非常常见于多界面应用。 ####第5章iPhone和iPad的多平台支持- **方法1:修改设备目标设置**:解释了如何通过调整Xcode项目设置来确保应用能够在iPhone和iPad上运行。 - **方法2:创建Universal应用程序**:介绍了如何创建一个既可以安装在iPhone也可以安装在iPad上的单一应用程序。 - **方法3:维护两个代码库**:讨论了另一种方法,即分别针对每个设备编写代码,从而实现更好的优化和定制。 ####第6章键盘输入- **使用键盘**:这一章涉及如何管理和响应键盘事件,包括键盘的显示和隐藏。 - **定制输入类型**:教授如何自定义文本输入字段的类型,比如数字输入、电子邮件地址等。 - **检测键盘是否可见**:介绍了检测键盘状态的方法,这对于调整界面布局尤为重要。 ####第7章屏幕旋转- **响应设备旋转**:这一节介绍了如何让应用根据设备的旋转来调整屏幕布局。 - **以编程的方式旋转屏幕**:讲解了如何在运行时手动控制屏幕方向。 ####第8章使用表视图- **简单的表视图**:介绍了如何创建基本的表视图,包括如何添加标题、脚注、图像等。 - **分节显示**:讲解了如何使用分节表视图,这是一种更复杂的数据展示方式,常用于需要按类别或章节分类显示数据的应用场景。 ####第9章应用程序首选项- **创建应用程序首选项**:解释了如何为用户提供自定义设置,比如字体大小、颜色主题等。 - **以编程的方式访问设置值**:详细介绍了如何读取和更新用户的首选项设置。 ####第10章文件处理- **理解应用程序文件夹**:这一节解释了应用程序的文件结构,以及如何在不同的目录下存储文件。 - **使用属性列表**:介绍了属性列表这种用于存储小型结构化数据的文件格式。 - **复制打包的资源**:讲述了如何将应用程序内的资源文件复制到用户的设备上。 ####第11章使用SQLite3进行数据库存储- **使用SQLite3**:SQLite3是一种轻量级的关系型数据库,非常适合用于移动应用。本章详细介绍了如何创建、查询和维护SQLite数据库。 - **在应用程序中打包SQLite数据库**:指导读者如何将现有的SQLite数据库文件包含在应用的资源文件中,以便在安装时使用。 ####第12章简单动画和视频播放- **使用NSTimer类**:NSTimer类用于定时操作,比如每隔一定时间重复执行某个任务。 - **变换视图**:讲解了如何使用核心动画框架来实现视图的平移、旋转和缩放等动画效果。 - **在iPhone中播放视频**:介绍了如何集成视频播放功能,包括如何选择和配置合适的播放器。 ####第13章访问内置应用程序- **发送e-mail**:介绍了如何利用MailComposer类来创建和发送电子邮件。 - **访问照相机与照片库**:这部分内容介绍了如何利用Camera和Photos框架来访问设备的照相机功能和照片库。 ####第14章手势识别- **识别手势**:详细说明了如何识别各种手势,包括轻拍、捏拉、旋转、摇动或拖曳和滑动等。 - **检测触摸**:这一节深入探讨了如何使用触摸事件来实现更复杂的用户交互。 ####第15章访问加速计- **使用加速计**:加速计是一种传感器,可以用来检测设备的物理移动。本章介绍了如何读取加速计数据并将其用于游戏或其他应用程序中。 ####第16章Web服务- **使用XML Web服务的基础知识**:介绍了如何使用XML格式的数据进行网络通信,包括SOAP协议的基本概念。 - **解析XML响应**:讲解了如何解析从Web服务接收到的XML数据。 ####第17章蓝牙编程- **使用Game Kit框架**:Game Kit是iOS的一个框架,用于实现多人游戏等功能。这部分内容介绍了如何使用Game Kit来建立蓝牙连接。 - **实现语音聊天**:这一节详细介绍了如何通过蓝牙连接实现实时语音聊天功能。 ####第18章Bonjour编程- **创建应用程序**:介绍了如何创建一个能够发布和查找网络服务的应用程序。 - **发布服务**:解释了如何使用Bonjour服务发布自己的服务,使得其他设备可以在网络上找到它。 ####第19章Apple推送通知服务- **生成证书请求**:推送通知服务需要开发者生成特定的证书。这部分内容介绍了如何生成和配置这些证书。 - **创建iPhone应用程序**:指导读者如何在Xcode中创建一个支持推送通知的应用程序。 ####第20章显示地图- **使用Map Kit框架显示地图和监视变化**:Map Kit是iOS的一个框架,用于集成地图功能。这部分内容介绍了如何使用该框架显示地图以及如何监控用户的当前位置。 - **获得位置数据**:这一节讲解了如何获取用户的位置信息,并将这些信息显示在地图上。 ####第21章后台应用程序- **理解iPhone中的后台执行**:介绍了iOS系统如何管理应用程序的生命周期,以及后台模式的工作原理。 - **本地通知**:本地通知是在设备上发出的通知,即使应用程序未运行也能提醒用户。本章详细介绍了如何设置和使用本地通知。 《iOS 4编程入门经典》是一本非常适合初学者的指南,它不仅涵盖了iOS开发的基础知识,还深入探讨了许多高级主题,如网络编程、多媒体处理和多任务支持等。无论你是刚刚接触iOS开发,还是想要进一步提升自己的技能,这本书都将是非常有用的资源。
pdf 文件大小:28.33MB