內容簡介
本書通過實例講解Swift語言在軟體開發中的實際套用方法。首先講述Swift的基礎內容,即開發環境的搭建和Swift的基礎語法。由於本書是晉級篇,故不再大篇幅講解基礎內容。再以UIKit控制項為主要內容,通過拖拖看小遊戲等案例來充分鞏固UIKit從基礎到高 級的知識體系,其中還會涉及網路數據讀取、圖片快取等技術。講解SpriteKit的套用,以圍住神經貓、跑酷熊貓兩個實例來講述2D遊戲的開發技術。
圖書目錄
第 1章 Swift語言基礎知識速覽 1
1.1 開啟新世界的大門 1
1.2 Swift的前世今生 1
1.3 Swift與Object-C的比較 2
1.4 什麼人適合學習Swift 2
1.5 下載Xcode 3
1.6 關於Mac作業系統 4
1.7 Swift快速入門 5
1.7.1 常量與變數 5
1.7.2 常用數據類型 6
1.7.3 數組 8
1.7.4 控制流 12
1.7.5 可選類型 14
1.7.6 枚舉 15
1.7.7 類 16
1.8 Swift開發實例-猜拳小遊戲 17
第 2章 Swift語法速讀 33
2.1 基礎知識 33
2.1.1 變數與常量 33
2.1.2 注釋 34
2.1.3 整數 34
2.1.4 浮點數 34
2.1.5 類型推測 34
2.1.6 數值類型轉換 34
2.1.7 布爾值 35
2.1.8 元組 35
2.1.9 可選類型 36
2.1.10 斷言 37
2.2 基本運算符 37
2.2.1 賦值運算符 37
2.2.2 數值運算 38
2.2.3 自增(自減)運算 38
2.2.4 複合賦值 38
2.2.5 比較運算 38
2.2.6 三元運算符號 39
2.2.7 區間 39
2.2.8 邏輯運算 39
2.2.9 括弧優先權 39
2.3 字元串和字元 40
2.3.1 字元串 40
2.3.2 字元 40
2.4 集合類型 41
2.4.1 數組 41
2.4.2 字典 43
2.5 流程控制 45
2.5.1 for循環 45
2.5.2 while循環 46
2.5.3 條件語句 47
2.5.4 控制轉移語句 50
2.6 函式 50
2.7 閉包 53
2.8 枚舉 53
2.9 類和結構體 54
2.10 屬性 55
2.11 方法 58
2.12 下標 59
2.13 繼承 61
2.14 構造過程 63
2.15 析構過程 65
2.16 自動引用計數 65
2.17 可選鏈 66
2.18 類型轉換 67
2.19 類型嵌套 69
2.20 擴展 70
2.21 協定 72
2.22 泛型 73
2.23 訪問控制 74
2.24 高 級運算符 75
第3章 基礎UIKit控制項概覽 77
3.1 創建工程及基本操作 77
3.1.1 創建Single View Application工程 77
3.1.2 基本操作 79
3.2 Button(按鈕) 85
3.2.1 Button控制項的基本屬性 85
3.2.2 Button實例:各類按鈕 87
3.3 Label 88
3.3.1 Label控制項的基本屬性 89
3.3.2 Label實例:各類文本標籤 90
3.4 TextField 90
3.4.1 文本框控制項的屬性 90
3.4.2 實例:登錄界面 92
3.4.3 實例:加法計算器 93
3.5 TextView 95
3.5.1 多行文本框的屬性 95
3.5.2 實例:自定義選擇內容後的選單 96
3.6 Switch 98
3.6.1 Switch控制項的屬性 98
3.6.2 Switch控制TextView的可編輯屬性 98
3.7 SegmentedControl 99
3.7.1 Segmented Control的屬性 100
3.7.2 Segmented Control實例 100
3.8 ImageView 102
3.8.1 圖像控制項的基本屬性 103
3.8.2 圖像控制項實例 103
3.9 ProgressView 105
3.9.1 進度條控制項的屬性 105
3.9.2 進度條控制項的實例 106
3.10 ActivityIndicator View 107
3.10.1 環形進度條的基本屬性 107
3.10.2 環形進度條實例 108
3.11 Slider 109
3.11.1 拖動條的基本屬性 109
3.11.2 實例:拖動條控制圖片透明度 110
3.12 AlertView 111
3.12.1 警告框的基本屬性 111
3.12.2 實例:各式各樣的警告框 112
3.13 ActionSheet 115
3.13.1 底部警告框的基本屬性 115
3.13.2 底部警告框的實例 115
3.14 DatePicker 117
3.14.1 日期選擇器的基本屬性 117
3.14.2 日期選擇器的實例 118
3.15 PickerView 119
3.15.1 選擇器的一些屬性 119
3.15.2 選擇器的實例 119
3.16 Stepper 123
3.16.1 步進器的一些屬性 123
3.16.2 實例:屬性加點器 124
3.17 WebView 125
3.17.1 網頁視圖控制項的一些屬性 125
3.17.2 實例:迷你網頁瀏覽器 126
3.18 Toolbar與Bar Button Item 127
3.18.1 工具條的一些屬性 128
3.18.2 Bar Button Item的一些屬性 128
3.18.3 工具條的實例 129
3.19 TableView 130
3.19.1 TableView的一些屬性 131
3.19.2 TableView的一個簡單例子 132
3.20 SearchBar 136
3.20.1 搜尋條的簡單屬性 137
3.20.2 搜尋條的簡單例子 137
3.20.3 Search Bar and Search Display Controller例子 142
3.21 NavigationBar 144
3.21.0 導航條的實例 144
3.22 NavigationController 146
3.22.1 導航控制器的屬性 146
3.22.2 導航控制器實例 147
3.23 TabBar 152
3.23.1 TabBar的一些屬性 152
3.23.2 TabBarItem的一些屬性 153
3.23.3 TabBar實例 154
3.24 TabBar Controller 154
3.25 Page View Controller 156
3.25.1 Page View Controller屬性 156
3.25.2 Page View Controller實例 156
3.26 UIScrollView 滾動視圖 158
3.26.1 UIScrollView實例 158
3.27 UICollectionView格線 160
3.27.1 UICollectionView實例 160
第4章 拖拖看小遊戲 163
4.1 構建主界面 164
4.2 基本變數和更新函式 168
4.3 判斷得分 169
4.4 重新開始玩遊戲 173
4.5 新增遊戲規則界面實現跳轉 174
4.6 自定義界面 178
第5章 豆瓣電台 186
5.1 套用整體分析 186
5.2 構建界面 188
5.3 圓形封面以及模糊背景 190
5.4 歌曲列表和頻道列表 194
5.5 獲取網路數據 200
5.6 設定頻道列表數據 206
5.7 反向傳值 210
5.8 設定歌曲封面 212
5.9 簡單的圖片快取策略 215
5.10 播放音樂 217
5.11 控制音樂 221
5.12 自動播放控制 225
5.13 播放時間 229
5.14 播放進度 231
5.15 顯示歌詞 233
5.16 後台播放 242
5.17 鎖屏時顯示歌曲的封面 243
5.18 鎖屏時歌曲的播放控制 245
第6章 任務提醒軟體 249
6.1 軟體預覽 249
6.2 創建項目 251
6.3 開始編寫任務分類模組 254
6.4 綁定類 262
6.5 模擬數據 265
6.6 Model初體驗 266
6.7 全局數據 269
6.8 添加任務分類 271
6.9 編輯任務分類 276
6.10 滑動刪除任務類型 279
6.11 任務分類圖示 282
6.12 滑動編輯與刪除任務分類 288
6.13 滑動編輯與刪除任務分類:iOS8 295
6.14 小細節處理 297
6.15 任務清單 302
6.16 設計任務清單的Cell 309
6.17 計算未完成的任務 312
6.18 滑動刪除任務 314
6.19 添加任務 315
6.20 編輯任務 323
6.21 選擇提醒時間 326
6.22 加入重視程度 331
6.23 添加任務模組的細節 337
6.24 存儲本地數據 344
6.25 讀取本地數據 349
6.26 數據本地化之NSUserDefaults 350
6.27 任務分類列表排序 351
6.28 本地訊息通知 351
6.29 數據保護措施 358
6.30 套用美化 360
第7章 SpriteKit簡介 363
7.1 簡單聊一聊 363
7.1.1 聊一聊SKNode 364
7.1.2 聊一聊SKScene 364
7.1.3 聊一聊紋理 364
7.1.4 聊一聊動作(Action) 364
7.1.5 聊一聊物理系統 364
7.2 如何學習SpriteKit 365
7.2.1 創建SpriteKit項目 365