第1章 iPhone开发环境设置 11.1 安装雪豹操作系统 21.2 安装iPhone SDK 51.2.1 老版本Xcode 3.0安装设置 51.2.2 Lion版本下iOS SDK安装设置 71.3 无证书开发环境Xcode设置 91.4 有证书开发环境Xcode设置 131.5 安装源代码版本管理工具 131.6 安装Wine 141.7 使用Wine安装Source Insight 151.8 相关网络资源 16第2章 Objective-C编程基础 172.1 Objective-C介绍 182.2 第一个iPhone程序 182.3 Objective-C基本类型 192.3.1 id 192.3.2 SEL 192.3.3 BOOL 202.3.4 nil、NULL和NSNull 202.4 常量声明和预处理宏 222.5 使用#import包含头文件 242.6 使用#pragma mark分隔代码块 242.7 Objective-C内存管理:retain和release 252.8 字符串操作 282.8.1 字符串常量 282.8.2 获取子字符串 292.8.3 合并和格式化字符串 302.8.4 分隔字符串 312.8.5 NSString和char*之间的转换 312.8.6 字符串比较 322.9 处理数值对象 322.10 处理日期时间NSDate 332.11 处理NSData类型 342.12 集合操作 352.12.1 数组操作:NSArray和NSMutableArray 352.12.2 字典操作:NSDictionary和NSMutableDictionary 452.12.3 集合操作:NSSet和NSMutableSet 492.12.4 堆栈操作 522.13 面向对象编程:类、实例和消息 522.13.1 类定义 522.13.2 类构造和构析函数 532.13.3 Singleton模式 552.13.4 @class、@protocol前向声明 562.13.5 self和super 562.13.6 实例方法和类方法 572.13.7 对象属性(@property) 582.13.8 静态属性(static attributes) 602.14 类扩展(Class Categories) 612.15 Objective-C接口编程 632.15.1 接口编程之@protocol 632.15.2 接口编程之后台线程 652.15.3 接口编程之Notifications 682.15.4 接口编程之NSOperationQueue 702.15.5 接口编程之私有方法 722.15.6 接口编程之静态库隐藏类 732.15.7 接口编程之@protocol封装类 742.15.8 接口稳定性和接口继承 762.16 定时器(NSTimer)编程 792.17 序列化和反序列化 802.17.1 序列化方法之Property List 802.17.2 序列化方法之NSKeyedArchiver 812.17.3 序列化方法之Core Data 822.18 Objective-C和C、C++混合编程 822.19 消息和NSInvocation 892.20 方法混合(Method Swizzling) 932.21 使用NSAssert进行代码调试 952.22 本章总结 952.23 参考书籍 96第3章 iPhone SDK开发基础 973.1 iPhone SDK介绍 983.2 第一个iPhone 界面程序 1013.3 iPhone程序启动过程 1073.4 iPhone程序生命周期 1093.5 掌握iPhone程序通信中心UIApplication和UIApplicationDelegate 1123.6 iPhone坐标系统 1133.7 UIView层次管理 1183.8 触控(Touch)测试 1223.9 多点触控(MultiTouch)和物体移动 1243.10 UIView旋转和缩放 1273.11 UIScrollView编程 1293.12 iPhone程序框架 1313.12.1 使用UINavigationController组织和管理UIView 1323.12.2 使用UITabBarController组织和管理UIView 1323.12.3 使用UISplitViewController组织和管理UIView 1353.13 旋转屏幕(Screen Rotations) 1373.14 掌握UIButton编程 1403.15 管理界面字体 1413.16 使用UILabel管理界面文本 1433.17 管理界面颜色 1453.18 界面风格(TRANSITIONING STYLES) 1503.19 单词排序表格编程 1513.20 NSUserDefaults和Property List文件 1523.21 文件系统和外部资源管理 1543.22 简单动画制作 1573.23 闪屏制作——程序启动动画 1593.24 多行文本输入控件制作 1613.25 图片处理 1643.26 Core Audio编程 1653.27 UITableView编程 1673.28 UISegmentedControl编程 1693.29 OpenFlow编程 1713.30 UIPageControl编程 1743.31 自定义仪表控件 1773.32 本章总结 182第4章 iPhone SDK高级编程 1834.1 Base64编解码 1844.2 Web Service和XML数据解析 1854.2.1 使用TBXML类解析XML数据 1854.2.2 使用SimpleXMLParser类解析XML数据 1874.3 JSON数据解析 1884.4 掌握SQLite管理用户数据 1914.5 缓存(Caching)及Core Data数据管理 1954.6 使用AES算法进行数据加解密 2114.7 电子商务安全基础——RSA算法和数据加密 2144.7.1 开发.NET版本RSA算法库 2144.7.2 建立iPhone版本RSA算法库 2214.8 自定义用户界面控件制作 2244.8.1 ComboBox控件和UIPikerView设计 2244.8.2 自定义UIDatePicker制作 2284.9 Web和JavaScript高级编程 2334.9.1 Web开发环境设置 2334.9.2 Phonegap (Cordova) Web程序实例 2354.10 本章总结 237第5章 iPhone企业应用实例分析 2395.1 综合应用概述 2405.2 系统介绍 2405.3 系统需求和主要用例 2415.4 程序处理流程 2435.5 主要实现类和相互关系 2445.6 程序框架分析 2465.7 技术要点分析 2515.7.1 异步网络通信 2515.7.2 Core Data缓存数据 2545.7.3 RSA算法加解密 2605.7.4 自定义控件制作 2605.7.5 表格控件定制 2625.7.6 自定义UIToolbar 2685.7.7 目录浏览器制作 2705.7.8 文件上传和下载 2755.8 本章总结 278第6章 iPad软件开发基础 2796.1 iPad软件开发介绍 2806.2 UISplitViewController编程 2806.3 UIPopoverController编程 2876.4 定制MPMoviePlayerController进行视频播放 2906.5 开发调色板(Palette)控件 2946.6 发送邮件 2966.7 Google地图编程 2976.8 本章总结 314第7章 iPad商业软件实例分析 3157.1 综合应用概述 3167.2 系统介绍 3167.3 系统需求和主要用例 3177.4 程序处理流程 3197.5 主要实现类和相互关系 3197.6 程序框架 3217.7 技术要点分析 3337.7.1 图片分页和滚动显示 3337.7.2 动态管理多国语言界面 3387.7.3 播放网络视频 3397.8 本章总结 342第8章 iOS游戏开发基础 3438.1 概述 3448.2 cocos2d系统介绍 3448.3 cocos2d编程基础 3478.3.1 第一个cocos2d程序 3478.3.2 基本动画 3518.4 Box2D物理引擎 3548.4.1 核心概念 3548.4.2 碰撞检测 3558.5 Chipmuck物理引擎 3598.5.1 重要概念 3598.5.2 物理模拟和碰撞检测 3618.6 粒子系统 3638.6.1 轨道卫星(Orbit Satellite) 3648.6.2 太空陨石(Space Rocks) 3658.7 Web技术实现游戏开发 3678.8 3D手机游戏开发 3688.9 本章总结 369第9章 iOS商业游戏实例分析 3719.1 概述 3729.2 闪回(Flash Back) 3729.3 法术的释放(Ghost Castle) 3769.3.1 GhostCastle中的Tile Map管理 3789.3.2 cocos2d中的Tile Map管理 381