《iOS編程》榮獲Jolt生產力大獎。第5版更新了iOS9、Xcode7、Swift的內容。全書涵蓋了開發iOS應用的方方面面。從Swift基礎知識到新增加的語言特性;從AppKit庫到常見的Cocoa設計模式;從Xcode技巧到Instrumen tst等。如果讀者剛接觸iOS編程,閱讀本書前兩章可以快速入門。如果讀者已經有iOS編程經驗,閱讀本書可以拾遺補缺。
本書有兩個特點:、涵蓋iOS應用開發必備知識:從Swift基礎知識到新語言特性,從AppKit庫到常見的Cocoa設計模式,從Xcode技巧到Instruments,不一而足。第二、指導讀者以正確的方法解決問題:Swift的習慣約定有哪些(例如命名約定,內存管理約定),創建子類時如何處理初始化方法,Cocoa的常見設計模式有哪些,如何選擇數據保存方法等。
Christian Keur是Big Nerd Ranch的高級講師和軟件工程師,負責編寫Big Nerd Ranch的“iOS新手培訓課程”教材。該教材廣受好評,是本書的原型。Christian畢業于美國佐治亞理工學院計算機科學系,目前居住在亞特蘭大。
Aaron Hillegass是Big Nerd Ranch的創始人之一,曾就職于NeXT公司和Apple公司,他擁有近20年的Cocoa、iOS開發與教學經驗。Aaron與他人合著了《Mac OS X編程》。
第1章 及時個簡單的iOS應用 1
1.1 創建Xcode項目 2
1.2 模型-視圖-控制器 5
1.3 設計Quiz 6
1.4 Interface Builder 7
1.5 創建界面 8
1.6 創建模型對象 21
1.7 編譯完成的應用 23
1.8 應用圖標 24
1.9 啟動畫面 26
第2章 Swift語言 27
2.1 Swift的數據類型 27
2.2 使用標準類型 28
2.3 可選 35
2.4 循環和字符串補全 37
2.5 枚舉和Switch 39
2.6 查閱Apple的Swift文檔 40
第3章 視圖與視圖層次結構 41
3.1 視圖基礎 42
3.2 視圖層次結構 42
3.3 創建新項目 44
3.4 視圖及Frame 45
3.5 自動布局系統 55
3.6 初級練習:更多自動布局練習 64
第4章 文本輸入與委托 65
4.1 文本編輯 65
4.2 實現溫度轉換 73
4.3 委托 76
4.3 初級練習:禁止輸入字母 79
第5章 視圖控制器 81
5.1 視圖控制器的視圖 82
5.2 設置初始視圖控制器 82
5.3 UITabBarController 85
5.4 加載以及展示視圖 90
5.5 與視圖控制器及其視圖交互 92
5.6 中級練習:夜間模式 93
5.7 深入學習:高清顯示 93
第6章 用代碼實現視圖 95
6.1 使用代碼創建視圖 96
6.2 代碼實現約束 97
6.3 代碼實現事件 104
6.4 初級練習:再添加一個Tab 106
6.5 中級練習:顯示用戶位置 106
6.6 高級練習:顯示地圖大頭針 106
6.7 深入學習:NSAutoresizingMaskLayoutConstraint 106
第7章 本地化 109
7.1 國際化 110
7.2 本地化 120
7.3 初級練習:另外一種本地化 126
7.4 深入學習:NSBundle在國際化中扮演的角色 126
7.5 深入學習:導入以及導出XLIFF 128
第8章 控制動畫 129
8.1 基礎動畫 130
8.2 另一個標簽 132
8.3 動畫完成 135
8.4 對約束作動畫 135
8.5 時間方法 139
8.6 初級練習:spring動畫 141
8.7 中級練習:Layout Guides 141
第9章 UITableView與UITableViewController 143
9.1 編寫Homepwner應用 144
9.2 UITableViewController 145
9.3 創建Item類 147
9.4 UITableView數據源 149
9.5 UITableViewCells 153
9.6 內容縮進 158
9.7 初級練習:多個分組 159
9.8 中級練習:固定的行 160
9.9 高級練習:自定義UITableView 160
第10章 編輯UITableView 161
10.1 編輯模式 161
10.2 添加行 166
10.3 刪除行 168
10.4 移動行 169
10.5 顯示提示窗口 170
10.6 設計模式 173
10.7 初級練習:修改刪除按鈕的標題 174
10.8 中級練習:禁止調整順序 174
10.9 高級練習:真正地禁止調整順序 174
第11章 創建UITableViewCell子類 175
11.1 創建ItemCell 176
11.2 添加并關聯ItemCell的屬性 178
11.3 使用ItemCell 179
11.4 動態計算高度 180
11.5 動態類型 181
11.6 初級練習:UITableViewCell的顏色 184
第12章 UIStackView 185
12.1 使用UIStackView 186
12.2 Segues 194
12.3 綁定內容 195
12.4 傳遞數據 200
12.5 初級練習:更多的UIStackView 201
第13章 UINavigationController 203
13.1 UINavigationController 204
13.2 使用UINavigationController導航 209
13.3 視圖的出現和消失 210
13.4 隱藏鍵盤 211
13.5 UINavigationBar 215
13.6 初級練習:顯示數字鍵盤 220
13.7 中級練習:自定義UITextField 220
13.8 高級練習:添加更多UIViewController 220
第14章 相機 221
14.1 通過UIImageView對象顯示圖片 222
14.2 通過UIImagePickerController拍攝照片 226
14.3 創建ImageStore 231
14.4 讓UIViewController可以訪問ImageStore 232
14.5 創建并使用鍵 233
14.6 使用ImageStore 235
14.7 初級練習:編輯圖片 236
14.8 中級練習:刪除圖片 237
14.9 高級練習:Camera Overlay 237
14.10 深入學習:導航實現文件 237
第15章 保存、讀取與應用狀態 241
15.1 固化 242
15.2 應用沙盒 245
15.3 NSKeyedArchiver與NSKeyedUnarchiver 248
15.4 應用狀態與狀態切換 251
15.5 通過NSData將數據寫入文件 254
15.6 錯誤處理 257
15.7 初級練習:PNG 259
15.8 深入學習:應用狀態切換 259
15.9 深入學習:文件系統讀/寫 261
15.10 深入學習:應用程序包 263
第16章 Size Classes 265
16.1 定制Size Classes 266
16.2 初級練習:垂直排列UITextField和UILabel 272
第17章 觸摸事件和UIResponder 273
17.1 觸摸事件 274
17.2 創建TouchTracker應用 275
17.3 創建Line結構體 276
17.4 創建DrawView 278
17.5 使用DrawView畫圖 279
17.6 處理觸摸事件并創建線條對象 280
17.7 @IBInspectable 285
17.8 中級練習:顏色 287
17.9 高級練習:圓圈 287
17.10 深入學習:響應對象鏈 287
17.11 深入學習:UIControl 289
第18章 UIGestureRecognizer與UIMenuController 291
18.1 UIGestureRecognizer子類 292
18.2 使用UITapGestureRecognizer檢測點擊 292
18.3 多個UIGestureRecognizer 294
18.4 UIMenuController 297
18.5 更多UIGestureRecognizer 299
18.6 深入學習UIGestureRecognizer 304
18.7 中級練習:神奇的線條 305
18.8 高級練習:速度和大小 305
18.9 鉑金挑戰:顏色 305
18.10 深入學習:UIMenuController與UIResponderStandardEditActions 306
第19章 網絡服務 307
19.1 開始Photorama應用 308
19.2 創建URL 309
19.3 發送請求 314
19.4 Photo模型 317
19.5 JSON數據 318
19.6 下載并顯示圖片數據 326
19.7 主線程 329
19.8 初級練習:打印返回信息 331
19.9 深入學習:HTTP 331
第20章 UICollectionView 333
20.1 顯示網格 334
20.2 UICollection數據源 336
20.3 自定義布局 339
20.4 創建自定義的UICollectionViewCell 341
20.5 下載圖片數據 345
20.6 查看照片 349
20.7 中級練習:改變Item的尺寸 352
20.8 高級練習:自定義布局 352
第21章 Core Data 353
21.1 對象圖 353
21.2 實體 354
21.3 創建Core Data Stack 358
21.4 更新數據 361
21.5 更新數據源 364
21.6 在硬盤上保存圖片 367
21.7 初級練習:照片查看次數 368
第22章 Core Data關系 369
22.1 關系 370
22.2 在界面中添加標簽 372
22.3 父子NSManagedObjectContext 382
22.4 中級練習:收藏 384
第23章 后記 385
23.1 接下來做什么 385
23.2 關注我們 386
索引 387
本書中所有代碼都是使用Swift語言編寫的,前面的章節會讓讀者快速熟悉這門新語言。通過本書,讀者會學到如何利用Swift語言特性來編寫更好的iOS應用。我們已經愛上Swift了,相信你也會的。
其他新增的部分包括collection view、size class、Auto Layout、web service、Core Data。
第5版使用的是Xcode 7.1或更新的版本,應用在安裝iOS 9或更新版本的設備上運行。
除了以上這些明顯的變化,作者還根據讀者和學生提出的問題對本書進行了大量修訂。可以說與前一版本相比,新版頁頁有改進。
終于第五版出來了!!等的急死了
吉林名摩羯了離開了,今年困境哦哦移民距離拉薩
買本生地的書籍給學生作為生地會考的資料拓寬知識面很不錯
經典新版,薄而有料,不錯。
當當大促,給我兒子先備著。自己包裝了透明書套。