第一篇 蘋果開發初窺門徑
第1章 邀請函——來自Objective-C
1.1 概述
1.2 蘋果開發簡介
1.3 Objective-C的個人簡曆
1.4 本書的扼要提綱
1.5 成為偉大的蘋果開發者
第2章 搭建開發環境——讓我們穿戴整齊去參加熱鬧的派對吧
2.1 IDE的準備
2.1.1 Xcode不同版本的下載
2.1.2 Xcode不同版本的共存
2.2 IDE的熟悉
2.2.1 Xcode的代碼撰寫界麵
2.2.2 Xcode的界麵文件
2.2.3 工程管理的注意事項
2.2.4 Xcode的使用注意事項
2.3 本章小結
第二篇 紮實功底略有所成
第3章 創建應用程序——自傢的孩子自傢疼
3.1 iOS應用程序的創建
3.2 iOS工程結構分析
3.3 MacOSX應用程序的創建和程序啓動
3.4 本章小結
第4章 開始開發——和Objective-C交個朋友
4.1 語法——打鐵勢必從姿勢學起
4.2 消息
4.3 類的創建
4.4 繼承和重寫(override)
4.5 分類(Category)
4.6 協議(Protocols)和代理(Delegation)
4.7 本章小結
第5章 打印日誌——維持秩序的攝像頭
5.1 簡單使用示例
5.2 進階使用示例
5.2.1 使NSLog的打印結果更詳細
5.2.2 NSLog原理詳解
5.3 日誌描述
5.4 本章小結
第6章 基本數據類型,錶達式和語句——鍋碗瓢盆一個都不少
6.1 概述
6.2 基本數據類型
6.3 命名規則
6.3.1 命名錯誤
6.3.2 命名規範
6.3.3 命名空間
6.4 錶達式
6.5 語句
6.5.1 if/else
6.5.2 switch
6.5.3 for循環
6.5.4 for循環的in語法
6.5.5 while循環
6.5.6 跳齣當前迴閤循環
6.6 本章小結
第7章 內存管理——打理矯情程序的超級拖把
7.1 內存管理機製——齣色程序的重要資本
7.1.1 內存的創建和釋放
7.1.2 自動釋放池和使用
7.1.3 實例方法和類方法
7.1.4 保留(retain)對象
7.1.5 復製(copy)對象
7.1.6 淺拷貝和深拷貝
7.1.7 自動保留(retain)
7.1.8 其他創建和釋放對象的方式
7.2 單例模式
7.3 取值方法(getter)和賦值方法(setter)
7.3.1 取值方法和賦值方法
7.3.2 屬性關鍵字
7.3.3 synthesize和dynamic的區彆
7.4 自動拖把ARC
7.4.1 ARC的使用方法
7.4.2 ARC新增關鍵字
7.4.3 ARC機製的使用規則
7.4.4 ARC機製的注意事項
7.4.5 遷移程序到ARC的做法
7.5 本章小結
第8章 Foundation Kit——巧婦可為有米之炊
8.1 字符串(NSString)
8.1.1 簡單的字符串使用
8.1.2 可變字符串使用
8.1.3 字符串的路徑相關使用
8.2 數組(NSArray)和集閤(NSSet)
8.2.1 數組和集閤的簡單使用
8.2.2 可變數組和可變集閤的使用
8.3 字典(NSDictionary)
8.3.1 簡單的字典使用方法
8.3.2 可變字典 107
8.4 數據(NSData)
8.5 數字(NSNumber)
8.5.1 NSNumber的使用
8.5.2 簡單的數學計算
8.5.3 數字格式
8.6 配置文件
8.7 本章小結
第9章 KVC機製——讓生活過得更好
9.1 KVC的使用和舉例
9.1.1 KVC機製
9.1.2 KVC的取值
9.1.3 KVC的存值
9.1.4 KVC協議的實現
9.1.5 一對多關係適用的運算符
9.2 KVO的使用和舉例
9.3 綁定的使用和示例
9.3.1 綁定的簡單使用
9.3.2 綁定的高級使用
9.4 本章小結
第10章 錯誤處理——知錯能改善莫大焉
10.1 概述
10.2 Objective-C的錯誤處理機製
10.3 友善的抓蟲好友——NSError
10.4 鐵血無情的判官——NSException
10.5 黑白兩道通吃——Signal
10.6 本章小節
第11章 block——大塊頭有大智慧
11.1 概述
11.2 block的基本使用示例
11.2.1 簡單的block
11.2.2 將block作為參數的API
11.2.3 block的聲明
11.2.4 block的typedef
11.2.5 block的值返迴
11.3 block的外部變量使用
11.3.1 block體的外部變量使用的奇怪之處
11.3.2 剋服外部變量的魔咒
11.4 block的內存管理
11.5 本章小結
第三篇 拓展能力融會貫通
第12章 視圖——展現外形美的窗口
12.1 MVC模式及示例
12.2 UIViewController(視圖控製器)
12.2.1 UIViewController和它的主視圖
12.2.2 主視圖的管理函數
12.2.3 UIViewController對於鏇轉的支持
12.2.4 多層UIViewController
12.3 導航視圖控製器(UINavigationController)
12.3.1 棧
12.3.2 自身的層次
12.3.3 導航控製器的使用示例:導航精通大師(一)
12.3.4 導航控製器的使用示例——導航欄左中右位置的配置
12.3.5 導航控製器的使用示例——導航欄右位置的多按鈕
12.3.6 導航控製器的使用示例——工具欄內容修改和全屏顯示
12.3.7 導航控製器的使用示例——動畫過渡和超大視圖
12.4 標簽頁視圖控製器
12.4.1 標簽頁控製器的創建
12.4.2 標簽頁控製器的More標簽項目
12.4.3 標簽頁上的標記
12.4.4 標簽頁欄上的警告框
12.4.5 隱藏標簽欄
12.5 彈齣視圖控製器(PopoverViewController)
12.5.1 使用示例
12.5.2 自定義式樣
12.6 分隔視圖控製器(UISplitViewController)
12.7 本章小結
第13章 控件——溝通心靈美的橋梁
13.1 控件使用的注意事項
13.2 標簽(UILabel)
13.3 文本視圖(UITextView)
13.3.1 不可編輯的文本視圖控件
13.3.2 自定義選中文本後的彈齣選項
13.3.3 可編輯的文本視圖控件
13.3.4 收起鍵盤
13.4 文本域(UITextField)
13.4.1 特有的特性
13.4.2 可拉伸圖片
13.4.3 避免被鍵盤擋住
13.5 進度視圖(UIProgressView)
13.6 滑動條(UISlider)
13.7 分隔欄控件(UISegmentControl)
13.8 按鈕(UIButton)
13.8.1 按鈕的基本使用
13.8.2 應對怪哢需求
13.9 本章小結
第14章 滾動視圖——錶達內涵美的手段
14.1 滾動視圖(UIScrollView)
14.2 錶視圖(UITableView)
14.2.1 錶視圖的工作流程
14.2.2 錶視圖的示例(1):皇傢馬德裏隊球員名單
14.2.3 錶視圖的示例(2):名單的分段顯示
14.2.4 錶視圖的示例(3):名單的索引顯示
14.2.5 錶視圖的示例(4):係統樣式的錶視圖單元
14.2.6 錶視圖的示例(5):自定義錶視圖的單元
14.2.7 錶視圖的示例(6):組式樣的錶視圖
14.2.8 錶視圖的示例(7):錶視圖的編輯功能(刪除)
14.2.9 錶視圖的示例(8):錶視圖的編輯功能(新增)
14.2.10 錶視圖的示例(9):錶視圖的編輯功能(排序)
14.2.11 錶視圖的示例(10):錶視圖的編輯功能(多選)
14.3 取值控件(UIPicker)
14.3.1 取值控件示例(1):球員角色菜單
14.3.2 取值控件示例(2):自定義UIPicker的選項外觀
14.4 本章小結
第15章 警告框——強勢地鬧彆扭
15.1 概述
15.2 iOS警告框的示例和使用
15.2.1 普通的警告框使用
15.2.2 無按鈕警告框
15.2.3 當場取得返迴值的警告框
15.2.4 顯示文本輸入框的警告框
15.2.5 顯示加密文本輸入框的警告框
15.2.6 顯示登錄框的警告框
15.2.7 多參數格式的警告框
15.2.8 客官請點菜,Sheet是您的菜單
15.3 MacOSX警告框的示例和使用
15.3.1 警告框的快捷實現
15.3.2 警告框的創建
15.3.3 警告框的sheet方式顯示
15.3.4 警告框的擴展信息
15.3.5 警告框的可選欄控件
15.3.6 Carbon下的警告框顯示
15.3.7 溫文爾雅地提醒
15.4 本章小結
第16章 視圖展示——畫上美麗妝容盡情舞動吧
16.1 橫竪屏和自動布局機製
16.1.1 簡單的硬代碼橫竪屏示例
16.1.2 autoresize橫竪屏示例
16.1.3 autolayout橫竪屏示例(1)—何謂自動布局
16.1.4 autolayout橫竪屏示例(2)—自動布局機製的實現
16.1.5 autolayout橫竪屏示例(3)—衝突處理和設備適配
16.1.6 autolayout的代碼使用
16.2 Quartz——我們手上的神筆
16.2.1 繪畫示例:隨意畫
16.2.2 圖形示例:各種圖形畫法
16.2.3 漸變示例
16.3 用動畫來提升用戶體驗
16.3.1 UIView的基本動畫效果
16.3.2 UIView的轉場動畫效果
16.3.3 CAAnimation的轉場動畫效果
16.3.4 CAAnimation的私有動畫效果
16.3.5 CAAnimation的視圖自身2D動畫——彈簧跳
16.3.6 CAAnimation的視圖自身2D動畫——撒腿就跑
16.3.7 CAAnimation的視圖自身2D動畫——閃爍
16.3.8 CAAnimation的視圖自身3D動畫——翻開書籍封麵
16.4 本章小結
第四篇 修得絕技爐火純青
第17章 網絡請求——互聯網客戶端的武功寶典
17.1 概述
17.2 NSURL網絡編程
17.2.1 同步下載
17.2.2 異步下載
17.2.3 堵塞下載
17.3 HTTP請求
17.3.1 PUT網絡請求
17.3.2 POST簡單網絡請求
17.3.3 POST進階網絡請求
17.3.4 SOAP網絡請求
17.4 XML解析
17.5 JSON解析
17.6 CFNetwork網絡編程
17.6.1 和純C的socket網絡開發區彆
17.6.2 簡單的HTTP請求
17.6.3 異步HTTP請求
17.6.4 驗證HTTP請求
17.7 本章小結
第18章 數據庫——化繁為簡,唯快不破
18.1 概述
18.2 CoreData的模型建立
18.3 CoreData的鋼鐵三兄弟
18.4 CoreData數據模型的屬性類型支持
18.5 CoreData的數據導入
18.6 CoreData持久性數據庫的內容分析
18.7 CoreData的數據讀取
18.8 CoreData和錶視圖的完美配閤
18.9 錶視圖集成CoreData的新增和刪除功能
18.10 錶視圖集成CoreData的更新功能
18.11 本章小結
第19章 多綫程編程——淩波微步,可戰可退
19.1 性能為王——綫程概述
19.2 基本綫程使用——NSThread
19.3 基本綫程使用——pthread
19.4 基本綫程使用——GCD
19.4.1 默認隊列的使用
19.4.2 組隊列的使用
19.4.3 GCD和函數指針配閤使用
19.5 綫程安全
19.5.1 NSLock的使用
19.5.2 synchronized的使用
19.5.3 condition的使用
19.6 進階並行開發——NSOperation
19.6.1 蘋果提供給開發者執行並發任務方法
19.6.2 NSOperation的並行開發的兩種做法
19.6.3 NSOperation的練手之作(一):RSS的讀取
19.6.4 NSOperation的練手之作(二):RSS數據解析
19.6.5 NSOperation的練手之作(三):和界麵的協調
19.6.6 NSOperation的練手之作(四):批量小圖的下載
19.6.7 NSOperation的練手之作(五):預覽圖的並行下載
19.7 消息循環(NSRunLoop)
19.8 本章小結
第20章 鑰匙串——防火、防盜、防黑客
20.1 概述
20.2 何時使用鑰匙串
20.3 iOS中的鑰匙串使用
20.3.1 新增和刪除鑰匙串項目
20.3.2 查找和更新鑰匙串項目
20.3.3 鑰匙串的Group概念
20.4 MacOSX中的鑰匙串使用
20.4.1 新增和刪除鑰匙串項目
20.4.2 查找和更新鑰匙串項目
20.5 加密的簡單示例
20.6 本章小結
第21章 通知——彈指神通,指哪動哪
21.1 通知和代理的區彆
21.2 本地通知的使用
21.2.1 通知接收環境的建立
21.2.2 通知的簡單發送
21.2.3 通知的異步發送
21.3 跨進程通知發送
21.4 本章小結
第22章 手勢——觸摸改變瞭世界
22.1 事件響應鏈
22.1.1 事件的生命周期
22.1.2 事件響應鏈
22.2 觸摸事件的接收示例
22.3 手勢響應示例——多種手勢識彆器
22.3.1 程序框架的搭建
22.3.2 Tap點擊手勢的識彆
22.3.3 依樣畫葫蘆地完成多種手勢識彆器
22.4 手勢之間的優先級
22.5 本章小結
第23章 推送——應用也有生命
23.1 推送簡介
23.2 推送證書的準備步驟
23.3 推送的內容
23.4 遠程推送的使用方法
23.5 本地推送的使用方法
23.6 推送的注意事項和常見錯誤解決方案
23.7 本章小結
第24章 程序間通信——應用組實現的最佳方案
24.1 打破沙盒的限製
24.2 自定義URL Scheme
24.2.1 調用係統應用程序
24.2.2 自定義URL Scheme
24.2.3 OpenIn:讓其他應用程序打開文件
24.2.4 自定義程序候選麵闆的按鈕
24.3 本章小結
第五篇 內外兼修大師風範
第25章 iOS 5和iOS 6開發相關的新特性——最先進的用戶體驗
25.1 概述
25.2 iOS 5新特性
25.2.1 書報亭(Newsstand)
25.2.2 iCloud
25.2.3 消息中心
25.2.4 輸入法
25.3 iOS 6新特性
25.3.1 Passbook的概念
25.3.2 Passbook的開發思路
25.4 本章小結
第26章 開發調試技巧——最強力的集成環境
26.1 自定義代碼段
26.2 靜態分析
26.3 內存泄漏檢測
26.4 單元測試:提交測試前,把關質量的最後一道鎖
26.4.1 邏輯代碼的單元測試示例
26.4.2 UI上的單元測試示例
26.5 本章小結
第27章 視網膜屏——最爽快的視覺享受
27.1 概述
27.2 視網膜屏的兼容解決方案
27.2.1 程序中的資源
27.2.2 啓動圖片
27.2.3 圖標
27.3 本章小結
第28章 本地化——最貼心的國際化
28.1 本地化的解決方案
28.1.1 使用Xcode的本地化功能的開發舉例
28.1.2 資源文件本地化的開發舉例
28.1.3 本地化映射錶的開發舉例
28.1.4 本地化的原理和相關知識
28.1.5 本地化格式的開發舉例
28.1.6 本地化應用程序名字
28.2 本章小結
第29章 程序通用設定——最適閤的功能劃分
29.1 通用設定的使用範圍
29.1.1 兩種解決方案的使用場景各有特點
29.1.2 評價者的意圖
29.2 通用設定的示例
29.2.1 係統設置的本地化開發舉例
29.2.2 係統設置的配置舉例:文本輸入框
29.2.3 係統設置的配置舉例:滑塊
29.2.4 係統設置的配置舉例:左標題右內容
29.2.5 係統設置的配置舉例:多選項
29.2.6 係統設置的配置舉例:子設置視圖
29.3 通用設定的同步
29.4 本章小結
第30章 輔助功能——最周全的係統設想
30.1 輔助功能簡介
30.2 輔助功能示例——Interface Builder中的VoiceOver
30.3 輔助功能示例——代碼中的VoiceOver
30.3.1 使用xib設置輔助功能示例
30.3.2 重寫輔助功能的示例
30.4 本章小結
第六篇 獨步天下不可不知
第31章 蘋果終極開發技巧——不傳秘籍重現天日
31.1 創建iPhone和iPad的通用應用程序
31.2 真機調試
31.3 DMG製作
31.3.1 簡單DMG文件製作
31.3.2 高級DMG文件製作
31.4 區分操作係統版本環境
31.5 本章小結
· · · · · · (
收起)