內容簡介
本書系統論述了iOS圖形圖像、動畫和多媒體編程技術,全部採用最新的基於iOS 8 的API。全書分為10章: 第1章準備開始,介紹了本書的結構及書中的一些約定; 第2章2D圖形圖像技術,介紹了UIKit繪圖技術、繪製視圖的路徑、繪製圖像和文本、坐標、Quartz坐標和坐標變換; 第3章圖像處理,介紹了創建圖像對象、繪製圖片、使用濾鏡和人臉識別等技術; 第4章動畫技術,介紹了視圖動畫、Core Animation框架、視圖動力學行為和動態效果等; 第5章音頻,介紹了音頻檔案、音頻API、AVFoundation框架、System Sound API和OpenAL等; 第6章視頻,介紹了視頻檔案、使用MediaPlayer框架播放視頻、使用AVFoundation框架播放視頻、錄製視頻和編輯視頻
圖書目錄
第1章準備開始
1.1本書結構
1.2本書中的約定
1.2.1實例代碼約定
1.2.2圖示約定
1.2.3圖中手勢
1.2.4方法命名約定
1.2.5構造器命名約定
第2章UIKit與Quartz2D繪圖技術
2.1繪製視圖
2.1.1視圖繪製周期
2.1.2實例:填充矩形
2.1.3填充與描邊
2.1.4繪製圖像和文本
2.2Quartz圖形上下文
2.3Quartz路徑
2.4Quartz坐標變換
2.4.1坐標系
2.4.22D圖形的基本變換
2.4.3CTM變換矩陣
2.4.4仿射變換
本章小結
第3章圖像處理
3.1使用圖像
3.1.1創建圖像
3.1.2從設備圖片庫選取或從照相機抓取
3.2CoreImage框架
3.3濾鏡
3.3.1使用濾鏡
3.3.2實例:舊色調和高斯模糊濾鏡
3.4人臉識別
3.4.1人臉識別開發
3.4.2實例:是猩猩還是小女孩
本章小結
第4章動畫技術
4.1視圖動畫
4.1.1動畫塊
4.1.2動畫生命周期事件
4.1.3過渡動畫
4.2iOS自定義視圖過渡動畫
4.2.1自定義過渡動畫
4.2.2樹形結構導航自定義過渡動畫
4.2.3模態導航自定義過渡動畫
4.2.4實例:使用HUAnimator自定義過渡動畫框架
4.3UIKit力學
4.3.1UIKit力學基本框架
4.3.2力學行為特性
4.3.3實例:UIKit力學
4.4運動效果
4.5CoreAnimation框架
4.5.1圖層
4.5.2隱式動畫
4.5.3顯式動畫
4.5.4關鍵幀動畫
4.5.5使用路徑
本章小結
第5章音頻
5.1音頻檔案簡介
5.2音頻API簡介
5.3AVFoundation框架實現音頻錄製與播放
5.3.1音頻播放
5.3.2音頻錄製
5.3.3語音合成
5.4使用SystemSoundAPI
5.4.1播放系統聲音
5.4.2發出警告提醒
5.4.3振動
本章小結
第6章視頻
6.1視頻檔案簡介
6.2播放視頻
6.2.1使用MediaPlayer框架
6.2.2使用AVFoundation框架
6.3錄製視頻
6.3.1使用UIImagePickerController
6.3.2使用AVFoundation框架
6.4編輯視頻
本章小結
第7章流媒體技術
7.1網路多媒體技術
7.1.1漸進式下載
7.1.2實時流媒體
7.2漸進式下載開發
7.3實時流媒體開發
7.3.1媒體檔案的分割與處理
7.3.2搭建HLS流媒體伺服器
7.3.3使用本地技術開發客戶端
7.3.4使用Hybrid技術開發客戶端
本章小結
第8章AirPlay技術
8.1AirPlay技術簡介
8.1.1支持AirPlay的設備
8.1.2多媒體檔案支持
8.2AirPlay開發
8.2.1MPMoviePlayerController
8.2.2AVPlayer
8.2.3UIWebView
本章小結
第9章訪問iPod媒體庫
9.1訪問iPod媒體庫相關API
9.2訪問與控制iPod媒體庫
9.2.1控制iPod媒體庫播放
9.2.2查看媒體信息
9.2.3通知
9.3搜尋iPod媒體庫
9.4iPod媒體庫選擇器
本章小結
第10章51CTO學院視頻流媒體伺服器與iPad客戶端敏捷開發實戰
10.1套用分析與設計
10.1.1套用簡介
10.1.2需求分析
10.1.3原型設計
10.1.4架構設計
10.1.5資料庫設計
10.1.6網路拓撲圖
10.2iOS敏捷開發
10.2.1敏捷開發宣言
10.2.2iOS是否可以敏捷開發
10.2.3iOS敏捷開發最佳實踐
10.3任務1:環境搭建
10.3.1任務1.1:iPad客戶端環境搭建
10.3.2任務1.2:ApacheHTTPServer搭建
10.3.3任務1.3:HLS流媒體伺服器搭建
10.3.4任務1.4:MySQL資料庫伺服器搭建
10.3.5任務1.5:phpMyAdmin管理工具的配置
10.4任務2:信息系統層開發
10.4.1任務2.1:創建資料庫對象
10.4.2任務2.2:導入測試數據
10.5任務3:業務邏輯層開發
10.5.1任務3.1:業務邏輯類
10.5.2任務3.2:伺服器端輔助對象Skeleton
10.6任務4:表示層開發
10.6.1任務4.1:客戶端輔助對象Stub
10.6.2任務4.2:根據原型設計初步設計iPad故事板
10.6.3任務4.3:首頁模組UI設計
10.6.4任務4.4:首頁視圖控制器代碼編寫
10.6.5任務4.5:首頁到詳細頁的過渡
10.6.6任務4.6:詳細模組UI設計
10.6.7任務4.6.1:主題顏色帶
10.6.8任務4.6.2:課程類別2列表
10.6.9任務4.6.3:課程內容
10.6.10任務4.7:詳細視圖控制器代碼編寫
本章小結