第1章 引言
1.1 本書內容
1.2 致謝
第2章 你好,iPhone
2.1 準備工作
2.2 創建“Hello iPhone”項目
2.3 創建一個簡單的界面
2.4 旋轉文本——調整UI
2.5 旋轉文本——調整代碼
2.6 代碼導航
2.7 在iPhone上運行程序
第3章 iPhone開發基礎
3.1 iPhone軟件的體系結構
3.2 用Objective-C編碼
3.3 Cocoa Touch的基礎類
3.4 與Xcode和Interface Builder一起工作
3.5 設計一個交互應用
3.6 iPhone應用程序的骨架
3.7 用委托機制(delegation)來定制行為
3.8 管理應用程序的內存
3.9 以屬性的方式存取變量
3.10 外賣︰要記住的東西
第4章 視圖控制器
4.1 實現一個按鈕操作
4.2 建立一個模型
4.3 為控制器添加插座變量和動作
4.4 更新UI
4.5 實現控制器
4.6 創建新的視圖控制器
4.7 構造UI
4.8 制作MovieEditorViewController
4.9 Interface Builder里的editing視圖控制器
第5章 表格視圖
5.1 表格的組成
5.2 建立基于表格的導航
5.3 為表格數據建模
5.4 表格的單元
5.5 編輯表格
5.6 用表格導航
5.7 定制表格視圖單元
5.8 排序表格數據
第6章 導航
6.1 郵件導航
6.2 導航控制器
6.3 基于導航的應用
6.4 把視圖控制器壓進堆棧
6.5 定制導航欄
6.6 彈出視圖控制器
第7章 頁簽條控制器
7.1 什麼時候用頁簽
7.2 創建一個頁簽條控制器
7.3 頁簽控制器里的視圖控制器
7.4 多個控制器
第8章 文件I/O
8.1 探索文件系統
8.2 創建我們的項目
8.3 獲取文件屬性
8.4 從文件中讀取數據
8.5 異步文件讀取
8.6 創建和刪除文件和目錄
8.7 把數據寫入到文件
8.8 屬性列表和NSCoding
第9章 預置
9.1 在應用程序中顯示一個能翻轉的預置視圖
9.2 管理預置
9.3 改變和更新預置
9.4 順路看看︰每秒種更新一次時鐘標簽
9.5 在系統設置應用程序中使用預置
9.6 裝入在“設置”應用程序中配置好的預置
第10章 SQLite數據庫
10.1 創建你的數據庫
10.2 創建實例程序
10.3 把數據庫放到設備上
10.4 在設備上使用數據庫
第11章 Core Data
11.1 Conference應用程序
11.2 Core Data棧
11.3 構建Core Data棧
11.4 建模
11.5 Track表格視圖
11.6 獲取議題
11.7 修改議題
11.8 導航
第12章 連接互聯網
12.1 在10分鐘之內用UIWebView構建一個瀏覽器
12.2 從網絡讀取數據
12.3 處理HTTP身份認證
12.4 解析Web Service返回的XML
12.5 通過你的應用發送郵件
第13章 點對點網絡
13.1 利用Bonjour來使用特設網絡服務
13.2 Bonjour服務發現
13.3 Game Kit概述
13.4 建立一個使用藍牙網絡的游戲
13.5 建立一個Peer拾取器
13.6 提供一個Peer拾取器委托
13.7 網絡游戲的邏輯
13.8 通過GKSession進行通信
13.9 語音聊天
第14章 視頻播放
14.1 使用MPMoviePlayerController進行視頻播放
14.2 接收來自影片播放器的通知
14.3 支持的媒體格式
第15章 存取iPod庫
15.1 監測iPod的回放
15.2 控制iPod的播放
15.3 使用iPod庫
15.4 瀏覽iPod庫
第16章 播放和錄制音頻
16.1 創建一個AVAudioRecorder
16.2 未壓縮的音頻格式
16.3 編碼音頻格式
16.4 使用AVAudioRecorder
16.5 監控錄音音量
16.6 用AVFramework播放音頻
16.7 與音頻會話交互
第17章 Core Audio
17.1 使用過程式的C API
17.2 播放系統聲音
17.3 Core Audio概述
第18章 事件、Multi-Touch及手勢
18.1 事件模型
18.2 跟蹤觸摸活動
18.3 觸踫
18.4 Multi-Touch手勢
第19章 繪制自定義視圖
19.1 繪制模型
19.2 繪制矢量圖
19.3 路徑
19.4 圖形環境
19.5 重新顯示一個視圖
第20章 繪制圖像和照片
20.1 基本的圖像繪制
20.2 定制圖片顯示
20.3 圖片拾取器
20.4 捕捉視頻
第21章 Core Animation
21.1 Core Animation介紹
21.2 UIView動畫
21.3 層
21.4 OpenGL ES
第22章 加速計
22.1 獲取設備方向
22.2 從UIResponder響應鏈中獲取晃動事件
22.3 獲取原始的加速計數據
22.4 過濾加速計數據
第23章 地址簿
23.1 地址簿UI
23.2 People拾取器委托
23.3 創建和配置People拾取器
23.4 Person控制器
23.5 增加新的聯系人
第24章 iPhone定位API
24.1 知道在哪里
24.2 位置更新
4.3 指南針
第25章 Map Kit
25.1 Contact Mapper(聯系人地圖)
25.2 顯示一幅地圖
25.3 地圖標注
25.4 選擇一個標注
第26章 應用集成
26.1 運行別的應用程序
26.2 成為能被集成的
第27章 調試
27.1 理解並修正構建中的錯誤
27.2 理解並修正導入/鏈接錯誤
27.3 使用iPhone SDK文檔
27.4 理解並修正Interface Builder錯誤
27.5 調試
27.6 找出重復釋放的“Zombie”對象
第28章 性能調整
28.1 使用Shark檢查性能
28.2 使用Instruments檢查性能
28.3 用Clang靜態分析器檢查性能
第29章 之前和之後
29.1 正確地開始
29.2 改善
29.3 其他特性
29.4 Beta測試
29.5 進入商店
29.6 推廣你的應用
附錄A 參考文獻