iOS9開發指南(附光盤) iOS 9 开发指南

管蕾

  • 出版商: 人民郵電
  • 出版日期: 2015-12-01
  • 定價: $594
  • 售價: 8.5$505
  • 語言: 簡體中文
  • 頁數: 779
  • 裝訂: 平裝
  • ISBN: 711540965X
  • ISBN-13: 9787115409652
  • 相關分類: Apple Developer
  • 下單後立即進貨 (約4週~6週)

買這商品的人也買了...

商品描述

<內容簡介>

全書共39章,循序漸進地講解了iOS 9應用開發的基本知識。本書從搭建開發環境講起,依次講解了Objective-C語言基礎,Swift語言基礎,Cocoa Touch,Xcode Interface Builder界面開發,使用Xcode編寫MVC程序,文本框和文本視圖,按鈕和標籤,滑塊、步進和圖像,開關控件和分段控件,Web視圖控件、可滾動視圖控件和翻頁控件,提醒和操作表,工具欄、日期選擇器,表視圖,活動指示器、進度條和檢索條, UIView,視圖控制器,實現多場景和彈出框,UICollectionView和UIVisualEffectView控件,iPad彈出框和分割視圖控制器,界面旋轉、大小和全屏處理,圖形,圖像,圖層和動畫,聲音服務,多媒體應用,定位處理,讀寫應用程序數據,觸摸,手勢識別和Force Touch,HomeKit智能家居應用開發,和硬件之間的操作,開發通用的項目程序,推服務和多線程,Touch ID,遊戲開發,HealthKit健康應用開發,WatchKit智能手錶開發等高級知識。本書內容全面,幾乎涵蓋了iOS 9應用開發所需要的主要內容,全書內容言簡意賅,講解方法通俗易懂,特別適合於初學者學習。
本書適合iOS初學者、iOS程序員、iPhone開發人員、iPad開發人員學習,也可以作為相關培訓學校和大專院校相關專業的教學用書。

<作者簡介>

管蕾,51CTO的Andr​​oid和iOS專家,定期參加火狐召開的開發專家會議。擁有多年的移動通信和數據壓縮傳輸相關開發經驗,精通多種語言。帶領團隊開發了國內雲服務器,開發過多款iOS應用程序,在蘋果商店取得了驕人的下載成績。

<目錄>

第一篇必備技術篇
第1章IOS開發入門2
1.1 iOS系統介紹2
1.1.1 iOS發展史2
1.1.2全新的版本——iOS 9 3
1.2開始iOS 9開發之旅4
1.3工欲善其事,必先利其器——搭建開發環境5
1.3.1 Xcode介紹6
1.3.2下載並安裝Xcode 7 6
1.3.3創建iOS 9項目並啟動模擬器8
1.3.4打開一個現有的iOS 9項目10
1.4 iOS 9中的常用開發框架10
1.4.1 Foundation框架簡介11
1.4.2 Cocoa框架簡介12
1.4.3 iOS程序框架13
第2章使用Xcode開發環境詳解14
2.1基本面板介紹14
2.1.1調試工具欄15
2.1.2導航面板介紹15
2.1.3檢查器面板18
2.2 Xcode 7的基本操作19
2.2.1改變公司名稱19
2.2.2通過搜索框縮小文件範圍19
2.2.3格式化代碼20
2.2.4代碼縮進和自動完成20
2.2.5文件內查找和替代21
2.2.6快速定位到代碼行22
2.2.7快速打開文件22
2.2.8使用書籤23
2.2.9自定義導航條24
2.2.10使用Xcode幫助24
2.2.11調試代碼25
2.3使用Xcode 7幫助系統26
第3章Objective-C語言基礎27
3.1最耀眼的新星27
3.1.1看一份統計數據27
3.1.2究竟何為Objective-C 27
3.1.3為什麼選擇Objective-C 28
3.2 Objective-C的優點及缺點28
3.3一個簡單的例子29
3.3.1使用Xcode編輯代碼29
3.3.2基本元素介紹31
3.4數據類型和常量34
3.4.1 int類型35
3.4.2 float類型36
3.4.3 double類型36
3.4.4 char類型37
3.4.5字符常量38
3.4.6 id類型39
3.4.7限定詞40
3.4.8總結基本數據類型41
3.5字符串42
3.6算數表達式42
3.6.1運算符的優先級43
3.6.2整數運算和一元負號運算符44
3.6.3模運算符45
3.6.4整型值和浮點值的相互轉換46
3.6.5類型轉換運算符46
3.7表達式47
3.7.1常量表達式47
3.7 .2條件運算符47
3.7.3 sizeof運算符48
3.7.4關係運算符49
3.7.5強制類型轉換運算符49
3.8位運算符50
3.8.1按位與運算符50
3.8.2按位或運算符50
3.8.3按位異或運算符51
3.8.4一次求反運算符51
3.8.5向左移位運算符52
3.8.6向右移位運算符52
3.8.7總結Objective-C的運算符53
第4章Swift語言基礎55
4.1 Swift概述55
4.1.1 Swift的創造者55
4.1.2 Swift的優勢56
4.2數據類型和常量57
4.2.1 int類型57
4.2.2 float類型57
4.2.3 double類型58
4.2.4 char類型58
4.2.5字符常量58
4.3變量和常量58
4.3.1常量詳解58
4.3.2變量詳解59
4.4字符串和字符60
4.4.1字符串字面量60
4.4.2初始化空字符串60
4.4.3字符串可變性61
4.4.4值類型字符串61
4.4.5計算字符數量61
4.4.6連接字符串和字符62
4.4.7字符串插值62
4.4.8比較字符串63
4.4 .9 Unicode 63
4.5流程控制65
4.5.1 for循環(1) 66
4.5.2 for循環(2) 67
4.5.3 while循環67
4.6條件語句68
4.6.1 if語句68
4.6.2 switch語句69
4.7函數70
4.7.1函數的聲明與調用70
4.7.2函數的參數和返回值71
4.8實戰演練——使用Xcode創建Swift程序72
第5章Cocoa Touch框架74
5.1 Cocoa Touch基礎74
5.1.1 Cocoa Touch概述74
5.1.2 Cocoa Touch中的框架75
5.1.3 Cocoa Touch的優勢75
5.2 iPhone的技術層76
5.2.1 Cocoa Touch層76
5.2.2多媒體層80
5.2.3核心服務層80
5.2.4核心OS層81
5.3 Cocoa Touch中的框架82
5.3.1 Core Animation(圖形處理)框架82
5.3.2 Core Audio(音頻處理)框架82
5.3.3 Core Data(數據處理)框架83
5.4 Cocoa中的類84
5.4.1核心類84
5.4.2數據類型類86
5.4.3 UI界麵類87
5.5國際化88
5.6使用Xcode學習iOS框架89
5.6.1使用Xcode文檔89
5.6.2快速幫助90
第6章Xcode Interface Builder界面開發92
6.1 Interface Builder基礎92
6.2和Interface Builder密切相關的庫面板94
6.3 Interface Builder採用的方法95
6.4 Interface Builder中的故事板——Storyboarding 95
6.4.1推出的背景95
6.4.2故事板的文檔大綱96
6.4. 3文檔大綱的區域對象98
6.5創建一個界面98
6.5.1對像庫98
6.5.2將對象加入到視圖中99
6.5.3使用IB佈局工具100
6.6定製界面外觀103
6.6.1使用屬性檢查器103
6.6 .2設置輔助功能屬性103
6.6.3測試界面104
6.7 iOS 9控件的屬性105
6.8實戰演練——將設計界面連接到代碼105
6.8.1打開項目105
6.8.2輸出口和操作106
6.8.3創建到輸出口的連接106
6.8.4創建到操作的連接108
6.9實戰演練——純代碼實現UI設計109
第7章使用Xcode編寫MVC程序112
7.1 MVC模式基礎112
7.1.1分析結構112
7.1.2 MVC的特點113
7.2 Xcode中的MVC 113
7.2.1原理113
7.2.2模板就是給予MVC的114
7.3在Xcode中實現MVC 114
7.3.1視圖115
7.3.2視圖控制器115
7.4數據模型116
7.5實戰演練— —使用模板Single View Application 117
7.5.1創建項目117
7.5.2規劃變量和連接120
7.5.3設計界面122
7.5.4創建並連接輸出口和操作123
7.5.5實現應用程序邏輯126
7.5.6生成應用程序127
7.6實戰演練——創建一個MVC程序(Swift版) 127
第二篇核心技術篇
第8章文本框和文本視圖132
8.1文本框(UITextField) 132
8.1.1文本框基礎132
8.1.2實戰演練——控制是否顯示TextField中信息132
8.1.3實戰演練——對輸入內容的長度進行驗證134
8.1.4實戰演練——實現用戶登錄框界面135
8.1.5實戰演練——實現一個UITextField控件( Swift版) 136
8.2文本視圖(UITextView) 137
8.2.1文本視圖基礎137
8.2.2實戰演練——拖動輸入的文本138
8.2.3實戰演練——自定義設置文字的行間距139
8.2.4實戰演練——自定義UITextView控件的樣式140
8.2.5實戰演練——在指定的區域中輸入文本(Swift版) 143
第9章按鈕和標籤145
9.1標籤(UILabel) 145
9.1.1標籤(UILabel)的屬性145
9.1.2實戰演練——使用UILabel顯示一段文本145
9.1.3實戰演練——為文字分別添加上劃線、下劃線和中劃線147
9.1.4實戰演練——顯示被觸摸單詞的字母148
9.1.5實戰演練——顯示一個指定樣式的文本(Swift版) 150
9.2按鈕(UIButton) 151
9.2.1按鈕基礎151
9.2.2實戰演練——自定義設置按鈕的圖案152
9.2.3實戰演練— —實現了一個變換形狀動畫按鈕154
9.3實戰演練——聯合使用文本框、文本視圖和按鈕155
9.3.1創建項目155
9.3.2設計界面156
9.3.3創建並連接輸出口和操作161
9.3.4實現按鈕模板162
9.3.5隱藏鍵盤164
9.3.6實現應用程序邏輯165
9.3.7總結執行166
9.4實戰演練——自定義一個按鈕(Swift版) 168
第10章滑塊、步進和圖像170
10.1滑塊控件(UISlider) 170
10.1.1使用Slider控件的基本方法170
10.1.2實戰演練——使用素材圖片實現滑動條特效171
10.1.3實戰演練——實現自動顯示刻度的滑動條172
10.1.4實戰演練——實現各種各樣的滑塊174
10.1.5實戰演練——自定義實現UISlider控件功能(Swift版) 177
10.2步進控件(UIStepper) 178
10.2.1步進控件介紹178
10.2.2實戰演練——自定義步進控件的樣式179
10.2.3實戰演練——設置指定樣式的步進控件181
10.2.4實戰演練——使用步進控件自動增減數字(Swift版) 185
10.3圖像視圖控件(UIImageView) 186
10.3.1 UIImageView的常用操作186
10.3.2實戰演練——實現圖像的模糊效果187
10.3.3實戰演練——滾動瀏覽圖片190
10.3.4實戰演練——實現一個圖片瀏覽器191
10.3.5實戰演練——使用UIImageView控件(Swift版) 193
第11章開關控件和分段控件195
11.1開關控件(UISwitch) 195
11.1.1開關控件基礎195
11.1.2實戰演練——改變UISwitch的文本和顏色195
11.1.3實戰演練——顯示具有開關狀態的開關197
11.1.4實戰演練——聯合使用UISlider與UISwitch控件198
11.1.5實戰演練——控制是否顯示密碼明文(Swift版) 199
11.2分段控件(UISegmentedControl) 200
11.2.1分段控件的屬性和方法201
11.2.2實戰演練——使用UISegmentedControl控件202
11.2.3實戰演練——添加圖標和文本203
11.2.4實戰演練——使用分段控件控制背景顏色204
11.2.5實戰演練——使用UISegmentedControl控件(Swift版) 205
第12章Web視圖控件、可滾動視圖控件和翻頁控件206
12.1 Web視圖(UIWebView) 206
12.1.1 Web視圖基礎206
12.1.2實戰演練——在UIWebView控件中調用JavaScript腳本207
12.1.3實戰演練——使用滑動條動態改變字體的大小208
12.1.4實戰演練——實現一個迷你瀏覽器工具209
12.1.5實戰演練——使用UIWebView控件加載網頁(Swift版) 211
12.2可滾動的視圖(UIScrollView) 212
12.2.1 UIScrollView的基本用法213
12.2.2實戰演練——使用可滾動視圖控件213
12.2.3實戰演練——滑動隱藏狀態欄216
12.2.4實戰演練——使用UIScrollView控件(Swift版) 217
12.3實戰演練——聯合使用開關、分段控件和Web視圖控件218
12.3.1創建項目219
12.3.2設計界面219
12.3. 3創建並連接輸出口和操作221
12.3.4實現應用程序邏輯223
12.3.5調試運行225
12.4翻頁控件(UIPageControl) 225
12.4.1 PageControll控件基礎225
12.4.2實戰演練——自定義UIPageControl控件的的外觀樣式226
12.4.3實戰演練——實現一個圖片播放器228
12.4.4實戰演練——實現一個圖片瀏覽程序230
12.4.5實戰演練——使用UIPageControl控件設置4個界面(Swift版) 230
第13章提醒和操作表232
13.1提醒視圖(UIAlertView) 232
13.1.1 UIAlertView基礎232
13.1.2實戰演練——實現一個自定義提醒對話框235
13.1.3實戰演練——實現振動提醒框效果236
13.1. 4實戰演練——自定義UIAlertView控件的外觀239
13.1.5實戰演練——使用UIAlertView控件(Swift版) 242
13.2操作表(UIActionSheet) 243
13.2.1操作表的基本用法243
13.2.2實戰演練——實現特殊樣式效果的UIActionSheet 244
13.2.3實戰演練——實現Reeder閱讀器效果248
13.2.4實戰演練——使用UIActionSheet控件定製一個按鈕面板251
13.2.5實戰演練——使用UIActionsheet實現一個分享App(Swift版) 251
第14章工具欄、日期選擇器254
14.1工具欄(UIToolbar) 254
14.1.1工具欄基礎254
14.1.2實戰演練——聯合使用UIToolBar和UIView 255
14.1.3實戰演練——自定義UIToolBar控件的顏色和樣式256
14.1.4實戰演練——創建一個帶有圖標按鈕的工具欄261
14.1.5使用UIToolbar製作一個網頁瀏覽器(Swift版) 262
14.2選擇器視圖(UIPickerView) 264
14.2.1選擇器視圖基礎264
14.2.2實戰演練——實現兩個UIPickerView控件間的數據依賴266
14.2.3實戰演練——自定義一個選擇器268
14.2.4實戰演練——實現一個單列選擇器275
14.2.5實戰演練——實現一個會發音的倒計時器(Swift版) 276
14.3日期選擇控件(UIDatePicker) 278
14.3.1 UIDatePicker基礎278
14.3.2實戰演練——實現一個日期選擇器280
14.3.3實戰演練——使用日期選擇器自動選擇一個時間286
14.3.4實戰演練——使用UIDatePicker控件(Swift版) 287
第15章表視圖290
15.1表視圖基礎290
15.1.1表視圖的外觀290
15.1.2表單元格290
15.1.3添加表視圖290
15.1.4 UITableView詳解294
15.2實戰演練296
15.2.1實戰演練——拆分錶視圖296
15.2.2實戰演練——自定義UITableViewCell 298
15.2.3實戰演練——實現一個圖文樣式聯繫人列表效果302
15.2.4實戰演練——在表視圖中動態操作單元格(Swift版) 304
第16章活動指示器、進度條和檢索條306
16.1活動指示器(UIActivityIndicatorView) 306
16.1. 1活動指示器基礎306
16.1.2實戰演練——自定義UIActivityIndicatorView控件的樣式306
16.1.3實戰演練——自定義活動指示器的顯示樣式309
16.1.4實戰演練——實現不同外觀的活動指示器效果312
16.1.5實戰演練——使用UIActivityIndicatorView控件(Swift版) 313
16.2進度條(UIProgressView) 314
16.2.1進度條基礎314
16.2.2實戰演練——自定義進度條的外觀樣式314
16.2.3實戰演練——實現多個具有動態條紋背景的進度條315
16.2.4實戰演練——自定義一個指定外觀樣式的進度條317
16.2.5實戰演練——實現自定義進度條效果(Swift版) 321
16.3檢索條(UISearchBar) 322
16.3.1檢索條基礎322
16.3.2實戰演練——在查找信息輸入關鍵字時實現自動提示功能323
16.3.3實戰演練——實現文字輸入的自動填充和自動提示功能326
16.3.4實戰演練——使用檢索控件快速搜索信息329
16.3.5使用UISearchBar控件331
第17章UIView詳解333
17.1 UIView基礎333
17.1.1 UIView的結構333
17.1.2視圖架構335
17.1.3視圖層次和子視圖管理335
17.2實戰演練——給任意UIView視圖四條邊框加上陰影336
17.3實戰演練——給UIView加上各種圓角、邊框效果338
17.4實戰演練——使用UIView控件實現彈出式動畫表單效果343
17.5實戰演練——創建一個滾動圖片瀏覽器(Swift版) 344
第18章視圖控制器349
18.1導航控制器(UIViewController)簡介349
18.1.1 UIViewController基礎349
18.1.2實戰演練——實現可以移動切換的視圖效果350
18.1.3實戰演練——實現手動旋轉屏幕的效果353
18.1.4實戰演練——實現會員登錄系統(Swift版) 354
18.2使用UINavigationController 355
18.2.1 UINavigationController詳解356
18.2.2實戰演練——使用導航控制器展現3個場景358
18.2.3實戰演練——實現一個界面導航條功能362
18.2.4實戰演練——創建主從關係的“主-子”視圖(Swift版) 364
18.3選項卡欄控制器365
18.3.1選項卡欄和選項卡欄項366
18.3.2實戰演練——使用選項卡欄控制器構建3個場景368
18.3.3實戰演練——使用動態單元格定製表格行372
18.3. 4開發一個界面選擇控制器(Swift版) 373
第三篇技術進階篇
第19章實現多場景和彈出框376
19.1多場景故事板376
19.1.1多場景故事板基礎376
19.1.2創建多場景項目377
19.1.3實戰演練——使用第二個視圖來編輯第一個視圖中的信息380
19.1.4實戰演練——實現多個視圖之間的切換384
19.2實戰演練——多場景視圖數據傳輸(Swift版) 388
第20章UICollectionView和UIVisual EffectView控件391
20.1 UICollectionView控件詳解391
20.1.1 UICollectionView的構成391
20.1.2實現一個簡單的UICollectionView 392
20.1.3自定義的UICollectionViewLayout 394
20.1.4實戰演練——使用UICollectionView控件實現網格效果395
20.1.5實戰演練——實現大小不相同的網格效果398
20.1.6實戰演練——實現Pinterest樣式的佈局效果(Swift版) 400
20.2 UIVisualEffectView控件詳解402
20.2.1 UIVisualEffectView基礎402
20.2.2使用VisualEffectView控件實現模糊特效404
20.2.3使用Visual Effect View實現Vibrancy效果404
20.2.4實戰演練——在屏幕中實現了模糊效果406
20.2.5實戰演練——在屏幕中實現了模糊效果407
20.2.6實戰演練——編碼實現指定圖像的模糊效果(Swift版) 409
第21章iPad彈出框和分割視圖控制器411
21.1 iPad彈出框411
21.1.1創建彈出框411
21.1.2創建彈出切換411
21.1.3手工顯示彈出框413
21.1.4響應用戶關閉彈出框413
21.1.5以編程方式創建並顯示彈出框414
21.1.6實戰演練——使用彈出框更新內容416
21.2探索分割視圖控制器418
21.2.1分割視圖控制器基礎418
21.2.2表視圖實戰演練420
第22章界面旋轉、大小和全屏處理425
22.1啟用界面旋轉425
22.1.1界面旋轉基礎425
22.1.2實戰演練——實現界面自適應(Swift版) 426
22.2設計可旋轉和調整大小的界面427
22.2.1自動旋轉和自動調整大小427
22.2.2調整框架427
22.2.3切換視圖427
22.2.4實戰演練——使用Interface Builder創建可旋轉和調整大小的界面427
22.2.5實戰演練——在旋轉時調整控件430
22.2.6實戰演練——旋轉時切換視圖433
22.2.7實戰演練——實現屏幕視圖的自動切換(Swift版) 436
第23章圖形、圖像、圖層和動畫437
23.1圖形處理437
23.1.1 iOS的繪圖機制437
23.1.2實戰演練——在屏幕中繪製一個三角形438
23.1.3實戰演練——使用CoreGraphic實現繪圖操作439
23.1.4使用Quartz 2D繪製移動的曲線(Swift版) 442
23.2圖像處理443
23.2.1實戰演練——實現顏色選擇器/調色板功能443
23.2.2實戰演練——在屏幕中繪製一個圖像444
23.3圖層446
23.3.1視圖和圖層446
23.3.2實戰演練——實現圖片、文字以及翻轉效果447
23.3.3實戰演練——滑動展示不同的圖片448
23.3.4實戰演練— —演示CALayers圖層的用法(Swift版) 449
23.4實現動畫450
23.4.1 UIImageView動畫450
23.4.2視圖動畫UIView 450
23.4.3 Core Animation詳解454
23.4.4實戰演練——使用圖像動畫455
23.4.5實戰演練——實現UIView分類動畫效果463
23.4.6實戰演練——動畫樣式顯示電量使用情況465
23.4.7實戰演練——圖形圖像的人臉檢測處理(Swift版) 468
第24章聲音服務472
24.1訪問聲音服務472
24.1.1聲音服務基礎472
24.1.2實戰演練——播放聲音文件473
24.1.3實戰演練——使用AudioToolbox播放列表中的音樂(Swift版) 476
24.2提醒和振動479
24.2.1播放提醒音480
24.2.2實戰演練——實用iOS的提醒功能480
24.2.3實戰演練——實現兩種類型的振動效果(Swift版) 488
第25章多媒體應用490
25.1 Media Player框架490
25.1.1 Media Player框架中的類490
25.1.2實戰演練——使用Media Player播放視頻491
25.1.3實戰演練——邊下載邊播放視頻493
25.1.4實戰演練——播放指定的視頻(Swift版) 495
25.2 AV Foundation框架497
25.2.1準備工作497
25.2.2使用AV音頻播放器497
25.2.3實戰演練——使用AV Foundation框架播放視頻498
25.2.4實戰演練——使用AVAudioPlayer播放和暫停指定的MP3(Swift版) 501
25.3圖像選擇器(UIImagePickerController) 501
25.3.1使用圖像選擇器501
25.3.2實戰演練——獲取圖片並縮放502
25.3.3實戰演練——通過彈出式菜單選擇相機中的照片(Swift版) 506
25.4實戰演練——實現一個多媒體的應用程序507
25.4.1實現概述507
25.4.2創建項目508
25.4.3設計界面509
25.4.4創建並連接輸出口和操作509
25.4.5實現電影播放器510
25.4.6實現音頻錄製和播放511
25.4.7使用照片庫和相機514
25.4.8實現Core Image濾鏡515
25.4.9訪問並播放音樂庫516
第26章定位處理520
26.1 Core Location框架520
26.1.1 Core Location基礎520
26.1.2使用流程520
26.1.3實戰演練——定位顯示當前的位置信息(Swift版) 523
26.2獲取位置526
26.2.1位置管理器委託526
26.2.2獲取航向527
26.3地圖功能528
26.3.1 Map Kit基礎528
26.3.2為地圖添加標註529
26.3.3實戰演練——在地圖中定位當前的位置信息(Swift版) 530
26.4實戰演練——創建一個支持定位的應用程序531
26.4. 1創建項目531
26.4.2設計視圖532
26.4.3創建並連接輸出口533
26.4.4實現應用程序邏輯533
26.4.5生成應用程序535
26.5實戰演練——定位當前的位置信息535
26.6實戰演練——在地圖中繪製導航線路538
第27章讀寫應用程序數據541
27.1 iOS應用程序和數據存儲541
27.2用戶默認設置542
27.3設置束542
27.3.1設置束基礎543
27.3.2實戰演練——通過隱式首選項實現一個手電程序544
27.4直接訪問文件系統547
27.4.1應用程序數據的存儲位置547
27.4.2獲取文件路徑548
27.4.3讀寫數據548
27.4.4讀取和寫入文件549
27.4.5通過plist文件存取文件550
27.4.6保存和讀取文件552
27.4.7文件共享和文件類型552
27.4.8實戰演練——實現一個用戶信息收集器553
27.5 iCloud存儲557
27.6使用SQLite3存儲和讀取數據557
27.7核心數據561
27.7.1 Core Data基礎561
27.7.2實戰演練——使用CoreData動態添加、刪除數據562
27.8因特網數據567
27.8.1 XML和JSON 567
27.8.2實戰演練——使用JSON獲取網站中的照片信息570
第四篇技術提高篇
第28章觸摸、手勢識別和Force Touch 574
28.1多點觸摸和手勢識別基礎574
28.2觸摸處理575
28.2.1觸摸事件和視圖575
28.2.2 iOS中的手勢操作577
28.2.3實戰演練——觸摸的方式移動視圖578
28.2.4實戰演練——觸摸挪動彩色方塊(Swift版) 578
28.3手勢處理582
28.3.1手勢處理基礎582
28.3.2實戰演練——實現一個手勢識別器586
28.3.3實戰演練——識別手勢並移動屏幕中的方塊(Swift版) 591
28.4 Force Touch技術594
28.4.1 Force Touch介紹595
28.4.2 Force Touch APIs介紹595
28.4.3實戰演練——使用Force Touch 596
28.4.4實戰演練——啟動Force Touch觸控面板598
第29章和硬件之間的操作600
29.1加速計和陀螺儀600
29.1.1加速計基礎600
29.1.2陀螺儀604
29.1.3實戰演練——檢測傾斜和旋轉604
29.1.4實戰演練——使用Motion傳感器(Swift版) 608
29.2訪問朝向和運動數據609
29.2.1兩種方法610
29.2.2實戰演練——檢測當前設備的朝向611
29.3實戰演練——傳感器綜合練習(Swift版) 613
第30章地址簿、郵件和Twitter 622
30.1地址簿622
30.1.1框架Address Book UI 622
30.1.2框架Address Book 623
30.2 Message UI電子郵件624
30.2.1 Message UI基礎624
30.2.2實戰演練——使用Message UI發送郵件(Swift版) 625
30.3使用Twitter發送推特信息626
30.3.1 Twitter基礎626
30.3.2實戰演練——開發一個Twitter客戶端(Swift版) 626
30.4實戰演練——聯合使用地址簿、電子郵件、Twitter和地圖629
30.4.1創建項目630
30.4.2設計界面630
30.4.3創建並連接輸出口和操作631
30.4.4實現地址簿邏輯631
30.4.5實現地圖邏輯633
30.4.6實現電子郵件邏輯635
30.4.7實現Twitter邏輯636
30.4.8調試運行636
第31章開發通用的項目程序637
31.1開發通用應用程序637
31.1. 1在iOS 6中開發通用應用程序637
31.1.2在iOS 6+中開發通用應用程序638
31.1.3圖標文件645
31.1.4啟動圖像646
31.2實戰演練——使用通用程序模板創建通用應用程序646
31.2 .1創建項目646
31.2.2設計界面646
31.2.3創建並連接輸出口647
31.2.4實現應用程序邏輯647
31.3實戰演練——使用視圖控制器648
31.3.1創建項目648
31.3.2設計界面649
31.3.3創建並連接輸出口650
31.3.4實現應用程序邏輯650
31.3.5生成應用程序650
31.4實戰演練——使用多個目標651
31.4.1將iPhone目標轉換為iPad目標651
31.4.2將iPad目標轉換為iPhone目標651
31.5實戰演練——創建基於“主—從”視圖的應用程序652
31.5.1創建項目652
31.5.2調整iPad界面653
31.5.3調整iPhone界面654
31.5.4實現應用程序數據源655
31.5.5實現主視圖控制器657
31.5.6實現細節視圖控制器658
31.5.7調試運行659
第32章推服務和多線程660
32.1推服務660
32.1.1推服務介紹660
32.1.2推服務的機制661
32.2多線程661
32.2.1多線程基礎661
32.2.2 iOS中的多線程663
32.2.3線程的同步與鎖667
32.2.4線程的交互668
32.3 ARC機制669
32.3.1 ARC概述669
32.3.2 ARC中的新規則670
第33章Touch ID詳解671
33.1開發Touch ID應用程序671
33.1.1 Touch ID的官方資料671
33.1.2開發Touch ID應用程序的步驟672
33.2實戰演練——使用Touch ID認證673
33.3實戰演練——使用Touch ID密碼和指紋認證674
33.4實戰演練——Touch ID認證的綜合演練678
第34章遊戲開發684
34.1 Sprite Kit框架基礎684
34.1.1 Sprite Kit的優點和缺點684
34.1.2 Sprite Kit、Cocos2D、Cocos2D-X和Unity的選擇684
34.2實戰演練——開發一個Sprite Kit遊戲程序685
34.3實戰演練——開發一個四子棋遊戲(Swift版) 693
第35章watchOS 2智能手錶開發704
35.1 Apple Watch介紹704
35.2 WatchKit開發詳解705
35.2.1搭建WatchKit開發環境706
35.2.2 WatchKit架構706
35.2.3 WatchKit佈局708
35.2.4 Glances和Notifications 708
35.2.5 Watch App的生命週期708
35.3開發Apple Watch應用程序709
35.3.1創建Watch應用710
35.3.2創建Glance界面710
35.3.3自定義通知界面710
35.3.4配置Xcode項目710
35.4實戰演練——實現AppleWatch界面佈局713
35.5實戰演練——演示AppleWatch的日曆事件715
35.6實戰演練——在手錶中控制小球的移動719
35.7實戰演練——實現一個Watch錄音程序720
第36章HomeKit智能家居應用開發730
36.1 HomeKit基礎730
36.1.1蘋果HomeKit如何牽動全國智能硬件格局730
36.1.2給開發者和廠家提供的巨大機會731
36.1.3蘋果正式推出HomeKit硬件標準731
36.2 HomeKit開發基礎732
36.2.1 HomeKit應用程序的層次模型732
36.2.2 HomeKit程序架構模式733
36.2.3 HomeKit中的類734
36.3實戰演練——實現一個HomeKit控製程序735
36.4實戰演練——WatchKit+HomeKit實現一個智能家居控製程序(Swift版) 739
第37章HealthKit健康應用開發748
37.1 HealthKit基礎748
37.1.1 Healthkit介紹748
37.1.2市面中的Healthkit應用現狀748
37.1.3接入Healthkit的好處749
37.2 HealthKit開發基礎750
37.2.1開發要求750
37.2.2 HealthKit開發思路750
37.3實戰演練——檢測一天消耗掉的能量751
37.4實戰演練——心率檢測(Swift版) 760
第五篇綜合實戰篇
第38章分析開源中國客戶端764
38.1系統介紹764
38.2系統主界面765
38.3多線程處理767
第39章綜合性智能手錶管理系統(Swift版) 771
39.1系統介紹771
39.2創建工程項目771
39.3 iPhone端的具體實現772
39.4 Watch端的具體實現774
39.4.1主界面視圖774
39.4.2各個子界面視圖的具體實現776