iOS 14開發指南
內容描述
《iOS 14開發指南》旨在介紹開發iOS 14應用程序的知識。本書主要講解瞭如何通過Xcode開發應用程序,如何實現各種控件,如何設計用戶界面,如何處理圖像、圖層、動畫等,如何實現多媒體開發,如何定位,如何讀寫應用程序的數據,如何處理手勢,如何開發通用的應用程序、tvOS應用程序、虛擬現實應用程序,如何在應用程序中添加Siri功能,如何使用Apple Pay、SwiftUI、WatchKit等。
《iOS 14開發指南》適合iOS初學者和iOS開發人員閱讀,也可以作為培訓機構和高校相關專業的教材。
目錄大綱
1章iOS開發入門1
1.1 iOS簡介1
1.2開始iOS 14開發之旅2
1.3工欲善其事,必先利其器——搭建開發環境3
1.3.1 Xcode 4
1.3.2 Xcode 12的新特性4
1.3.3下載並安裝Xcode 12 4
1.3.4創建iOS 14項目並啟動模擬器6
1.3.5打開一個現有的iOS 14項目8
1.3.6使用Xcode 12的新特性:基於Swift創建一個通用應用程序8
2章Xcode開發環境11
2.1基本面板11
2.1.1調試工具欄12
2.1.2資源管理器12
2.1.3屬性面板15
2.2 Xcode 12的基本作15
2.2.1改變公司名稱16
2.2.2通過搜索框縮小文件範圍16
2.2.3格式化代碼17
2.2.4代碼縮進和自動補全17
2.2.5文件內查找和替換18
2.2.6快速定位到代碼行19
2.2.7快速打開文件19
2.2. 8自定義導航欄20
2.2.9調試代碼20
2.3使用Xcode 12的幫助系統21
3章通過IB開發界面24
3.1 IB的基礎知識24
3.2 IB中的故事板25
3.2.1推出的背景26
3.2.2故事板的文檔大綱26
3.2.3文檔大綱區域的對象27
3.3創建界面27
3.3.1 Object庫28
3.3. 2將對象添加到視圖中28
3.3.3使用IB佈局工具29
3.4定制界面外觀31
3.4.1使用Attributes Inspector 31
3.4.2設置Accessibility選項區域32
3.5 iOS 14中控件的屬性33
3.6完全通過代碼實現UI設計33
4章使用Xcode編寫MVC應用程序36
4.1 MVC模式36
4.2 Xcode中的MVC 37
4.2.1 Xcode中的視圖37
4.2.2 Xcode中的視圖控制器37
4.3數據模型37
4.4基於Objective-C使用模板Single View Application創建MVC程序38
4.4.1創建項目38
4.4.2規劃變量和連接40
4.4.3設計界面42
4.4.4創建並連接輸出口和作43
4.4.5實現應用程序邏輯45
4.4.6生成應用程序45
4.5基於Swift使用模板Single View Application創建MVC應用程序46
5章文本框和文本視圖47
5.1文本框47
5.1.1文本框的基礎知識47
5.1.2控制是否顯示TetField中的密碼明文信息47
5.1.3實現用戶登錄界面49
5.1.4限制輸入文本的長度50
5.1.5基於Swift實現UITetField控件51
5.2文本視圖52
5.2.1文本視圖的基礎知識52
5.2.2自定義UITetView控件中文字的行間距53
5.2.3自定義UITetView控件的樣式54
5.2.4基於Swift在指定的區域中輸入文本56
5.2.5基於Objective-C通過文本提示單擊的按鈕57
5.2.6基於Swift在屏幕中顯示單擊的按鈕57
6章標籤和按鈕59
6.1標籤59
6.1.1標籤的屬性59
6.1.2使用UILabel顯示一段文本59
6.1.3為文字分別添加上畫線、下畫線和中畫線60
6.1.4基於Swift顯示指定樣式的文本62
6.2按鈕63
6.3基於Objective-C聯合使用文本框、文本視圖和按鈕63
6.3.1創建項目64
6.3.2設計界面64
6.3.3創建並連接輸出口和作69
6.3.4實現按鈕模板70
6.3.5隱藏鍵盤71
6.3.6實現應用程序邏輯73
6.3.7總結執行74
6.4基於Swift聯合使用文本框、文本視圖和按鈕74
6.5基於Swift自定義按鈕74
7章滑塊控件、步進控件和圖像視圖控件76
7.1滑塊控件76
7.1.1滑塊控件的基本屬性76
7.1.2使用素材圖片實現滑塊特效77
7.1.3實現各種各樣的滑塊78
7.1.4基於Swift實現UISlider控件80
7.2步進控件81
7.2.1步進控件的基本屬性81
7.2.2自定義步進控件的樣式81
7.2.3基於Swift使用步進控件自動增減數字83
7.3圖像視圖控件83
7.3.1 UIImageView的常用屬性和方法83
7.3.2滾動瀏覽圖片84
7.3.3實現圖片瀏覽器85
7.3.4基於Swift使用UIImageView控件87
8章開關控件和分段控件89
8.1開關控件89
8.1.1開關控件的屬性89
8.1.2顯示開關的狀態90
8.1.3顯示默認打開的開關控件91
8.1.4基於Swift控制是否顯示密碼明文91
8.2分段控件92
8.2.1分段控件的屬性和方法92
8.2.2添加圖標和文本94
8.3基於Objective-C聯合使用開關控件和分段控件95
8.4基於Swift聯合使用開關控件和分段控件97
9章可滾動視圖控件、翻頁控件和新的Web視圖控件98
9.1可滾動視圖控件98
9.1.1 UIScrollView的基本屬性98
9.1.2使用可滾動視圖控件98
9.1.3滑動隱藏狀態欄101
9.1. 4基於Swift使用UIScrollView控件101
9.2翻頁控件103
9.2.1 UIPageControll控件的基礎知識103
9.2.2實現圖片播放器103
9.2.3實現圖片瀏覽程序105
9.2.4基於Swift使用UIPageControl設置4個界面106
9.3新的Web視圖控件——WKWebView 107
9.3.1 WKWebView的基礎知識107
9.3.2基於Objective-C使WKWebView與JavaScript交互109
9.3.3基於Swift使WKWebView與JavaScript交互110
10章提醒和作表112
10.1 UIAlertController的基礎知識112
10.1.1提醒視圖112
10.1.2作表視圖112
10.2使用UIAlertController 112
10.2.1簡單的對話框例子113
10.2.2 “警告”樣式114
10.2.3文本對話框114
10.2.4上拉菜單116
10.2.5釋放對話框控制器118
10.3實戰演練119
10.3. 1實現自定義的作表視圖119
10.3.2自定義提醒表視圖和作表視圖120
10.3.3自定義UIAlertController控件的外觀122
10.3.4基於Swift實現提醒框124
11章工具欄和選擇器125
11.1工具欄125
11.1.1工具欄的基礎知識125
11.1.2創建帶圖標按鈕的工具欄126
11.1.3基於Swift使用UIToolbar製作網頁瀏覽器128
11.2選擇器視圖130
11.2.1選擇器視圖的基礎知識130
11.2.2實現兩個UIPickerView控件間的數據依賴132
11.2.3基於Objective-C自定義選擇器135
11.2.4基於Swift自定義選擇器143
11.2.5實現單列選擇器143
11.2.6基於Swift實現“星期”選擇框144
11.3日期選擇控件146
11.3.1基於Swift使用UIDatePicker控件146
11.3.2實現日期選擇器147
11.3.3使用日期選擇器自動選擇時間150
12章表視圖152
12.1表視圖的基礎知識152
12.1.1表視圖的外觀152
12.1.2表單元格152
12.1.3添加表視圖153
12.1.4 UITableView詳解154
12.2實戰演練157
12.2.1循環創建多個UITableViewCell 157
12.2.2實現單元格的圓角樣式效果158
12.2.3基於Objective-C使用表視圖161
12.2.4基於Swift使用表視圖166
13章活動指示器、進度條和檢索條167
13.1活動指示器167
13.1.1實現不同外觀的活動指示器效果167
13.1.2基於Swift使用UIActivityIndicatorView控件168
13.2進度條169
13.2.1自定義進度條的外觀樣式170
13.2.2實現多個具有動態條紋背景的進度條170
13.2.3基於Swift實現自定義進度條效果173
13.3檢索條174
13.3.1在查找信息輸入關鍵字時實現自動提示功能175
13.3.2實現文字輸入的自動填充和自動提示功能179
13.3.3使用UISearchBar控件快速搜索信息180
13.3.4基於Objective-C在表視圖中實現信息檢索183
13.3.5基於Swift在表視圖中實現信息檢索184
14章UIView詳解185
14.1 UIView基礎185
14.1.1 UIView的結構185
14.1 .2視圖架構187
14.1.3視圖層次和子視圖管理188
14.1.4視圖繪製週期188
14.1.5 UIView的常用屬性188
14.2實戰演練189
14.2.1給任意UIView視圖的條邊框加上影189
14.2.2給UIView加上各種圓角、邊框效果190
14.2.3使用UIView控件實現彈出式動畫表單效果191
14.2.4基於Swift創建滾動圖片的瀏覽器界面192
14.2.5基於Objective-C創建產品展示列表194
14.2.6基於Swift創建產品展示列表195
15章視圖控制器196
15.1 UIViewController的基礎知識196
15.1.1 UIViewController的常用屬性和方法196
15.1.2實現可以移動切換的視圖效果197
15.1.3實現手動旋轉屏幕的效果198
15.2使用UINavigationController 199
15.2.1 UINavigationController詳解199
15.2.2實現界面導航欄201
15.2.3基於Objective-C使用導航控制器展現3個場景202
15.2.4基於Swift使用導航控制器展現3個場景204
15.3選項卡欄控制器204
15.3.1選項卡欄和選項卡欄項204
15.3.2使用選項卡欄控制器構建3個場景206
15.3.3使用動態單元格定製表格行207
15.3.4基於Swift開發界面選擇控制器208
16章實現多場景210
16.1多場景故事板210
16.1.1多場景故事板的基礎知識210
16.1.2創建多場景項目211
16.1.3實現多個視圖之間的切換214
16.2基於Objective-C使用二個視圖來編輯一個視圖中的信息217
16.3基於Swift使用二個視圖來編輯一個視圖中的信息221
17章UICollectionView控件和UIVisualEffectView控件222
17.1 UICollectionView控件222
17.1.1 UICollectionView的構成222
17.1.2自定義的UICollectionViewLayout 223
17.1.3使用UICollectionView控件實現網格效果223
17.1.4使用UICollectionView控件實現大小不相同的網格效果226
17.1.5基於Swift實現不同顏色方塊的佈局效果229
17.2 UIVisualEffectView控件229
17.2.1 UIVisualEffectView的基礎知識230
17.2.2使用UIVisualEffectView控件實現模糊特效231
17.2.3使用UIVisualEffectView 控件實現Vibrancy效果232
17.2.4使用UIVisualEffectView控件在屏幕中實現模糊效果233
17.2.5基於Swift編碼實現指定圖像的模糊效果235
18章iPad彈出框和iPad分割視圖控制器237
18.1 iPad彈出框237
18.1.1創建彈出框237
18.1.2創建彈出切換237
18.1.3彈出模態視圖239
18.2 iPad分割視圖控制器240
18.2.1分割視圖控制器的基礎知識240
18.2.2使用分割視圖控制器242
19章界面旋轉、大小和全屏處理244
19.1啟用界面旋轉244
19.1.1界面旋轉的基礎知識244
19.1.2基於Swift實現界面自適應245
19.1.3基於Objective-C實現界面元素自適應246
19.1.4基於Swift實現界面元素自適應246
19.2設計可旋轉和可調整大小的界面247
19.2. 1自動旋轉和自動調整大小247
19.2.2調整框架247
19.2.3切換視圖247
19.2.4使用IB創建可旋轉和調整大小的界面247
19.2.5在旋轉時調整控件249
19.2.6基於Swift實現屏幕視圖的自動切換253
20章圖形繪製、圖像處理、圖層和動畫255
20.1圖形繪製255
20.1.1 iOS的繪圖機制255
20.1.2在屏幕中繪製三角形255
20.1.3使用Core Graphics實現繪圖作256
20.2圖像處理259
20.2.1實現顏色選擇器/調色板功能259
20.2.2在屏幕中繪製圖像260
20.3圖層261
20.3.1視圖和圖層261
20.3.2實現圖片、文字以及翻轉效果262
20.3.3滑動展示不同的圖片262
20.3.4基於Swift演示CALayer圖層的用法263
20.4動畫264
20.4.1 UIImageView動畫265
20.4.2 UIView 265
20.4.3 Core Animation詳解266
20.4.4基於Swift處理圖形圖像的人臉檢測266
20.4.5基於Objective-C聯合使用圖像動畫、滑塊和步進控件269
20.4.6基於Swift聯合使用圖像動畫、滑塊和步進控件273
21章多媒體開發274
21.1使用AudioToolbo框架274
21.1.1聲音服務的基礎知識274
21.1.2播放指定的聲音文件275
21.1.3播放任意位置的音頻276
21.2提醒和振動276
21.2.1播放提醒音並振動277
21.2.2基於Swift實現兩種類型的振動效果277
21.3 AV Foundation框架278
21.3.1準備工作278
21.3.2基於Swift使用AVAudioPlayer播放和暫停指定的MP3 278
21.3.3使用AVKit框架播放列表中的視頻279
21.3.4使用AVKit框架播放本地視頻281
21.3.5使用AVKit框架播放網絡視頻282
21.4圖像選擇器282
21.4.1使用圖像選擇器282
21.4.2基於Objective-C獲取照片庫中的圖片283
21.4.3基於Swift獲取照片庫中的圖片285
22章分屏多任務287
22.1分屏多任務基礎287
22.1.1分屏多任務的開發環境287
22.1.2 Slide Over和Split View 288
22.1.3畫中畫289
22.2實戰演練290
22.2.1基於Swift使用SlideOver多任務290
22.2.2基於Objective-C使用SplitView多任務293
22.2.3基於Swift使用SplitView多任務295
22.2.4基於Swift開發一個分割多視圖的瀏覽器296
23章定位處理300
23.1通過iOS模擬器調試定位程序的方法300
23.2 Core Location框架301
23.2.1 Core Location的基礎知識301
23.2.2使用流程301
23.2.3基於Swift通過定位顯示當前的位置信息302
23.3獲取位置305
23.3.1位置管理器委託306
23.3.2獲取航向306
23.3.3定位當前的位置信息307
23.4基於Objective-C創建支持定位的應用程序308
23.4.1創建項目309
23.4.2實現應用程序邏輯310
23.5基於Swift創建支持定位的應用程序312
24章讀寫應用程序的數據313
24.1 iOS應用程序和數據存儲313
24.2用戶默認設置314
24.3設置束315
24.3.1設置束基礎315
24.3.2基於Objective -C通過隱式選項實現手電筒程序316
24.3.3基於Swift通過隱式選項實現手電筒程序318
24.4直接訪問文件系統318
24.4.1應用程序數據的存儲位置319
24.4.2獲取文件路徑319
24.4.3基於Objective-C實現用戶信息收集器320
24.4.4基於Swift實現用戶信息收集器323
24.5核心數據323
24.5.1 Core Data的基礎知識324
24.5.2使用Core Data動態添加、刪除數據324
25章觸摸、手勢識別和Force Touch 326
25.1多點觸摸和手勢識別的基礎知識326
25.2觸摸處理326
25.2.1 iOS中的手勢作327
25.2.2使用觸摸的方式移動視圖327
25.2.3基於Swift觸摸挪動彩色方塊328
25.3手勢處理332
25.3.1手勢處理的基礎知識332
作者介紹
管蕾,51CTO的Android和iOS專家,帶領團隊開發了*款雲服務器,開發過多款iOS應用程序,代表作品有《iOS 8開髮指南》《iOS 9開髮指南》《iOS 10開髮指南》《iOS 11開髮指南》。