iOS編程(第4版)

iOS編程(第4版)
定價:599
NT $ 521
 

內容簡介

榮獲Jolt生產力大獎。第4版更新了iOS7和Xcode5的內容。全書涵蓋了開發iOS應用的方方面面。從Objective-C基礎知識到新增加的語言特性;從AppKit庫到常見的Cocoa設計模式;從Xcode技巧到Instrumentst等。如果讀者剛接觸iOS編程,閱讀本書前兩章可以快速入門。如果讀者已經有iOS編程經驗,閱讀本書可以拾遺補缺。

Christian Keur是Big Nerd Ranch的高級講師和軟件工程師,負責編寫Big Nerd Ranch的「iOS新手培訓課程」教材。該教材廣受好評,是本書的原型。Christian畢業於美國佐治亞理工學院計算機科學系,目前居住在亞特蘭大。

Aaron Hillegass是Big Nerd Ranch的創始人之一,曾就職於NeXT公司和Apple公司,他擁有近20年的Objective-C、Cocoa、iOS開發與教學經驗。Aaron與他人合著了《Mac OS X編程》和《Objectibe-C編程》。

Joe Conway曾參與編寫了「iOS新手培訓課程」教材。他最近創辦了stable/kernel 公司,開發高質量的移動應用。
 

目錄

前言xiii
本書適合哪些讀者xiii
第4版有哪些更新xiii
教學理念xiv
如何使用本書xv
本書是如何組織的xv
代碼風格xvii
版式說明xvii
開發所需的硬件與軟件xviii
第1章第一個簡單的iOS應用1
1.1創建Xcode項目2
1.2模型—視圖—控制器4
1.3設計Quiz5
1.4創建視圖控制器6
1.5創建界面8
1.6創建關聯14
1.7創建模型對象18
1.8大功告成21
1.7在模擬器上運行應用22
1.9安裝應用23
1.9應用圖標25
1.10啟動圖片27
第2章Objective—C29
2.1對象29
2.2使用對象30
2.3編寫命令行工具RandomItems33
2.4創建Objective—C類的子類38
2.5深入學習NSArray與NSMutableArray58
2.6異常與未知選擇器60
2.7練習62
2.8初級練習:查找問題62
2.9中級練習:另一個初始化方法62
2.10高級練習:另一個類63
2.11關於深入學習部分63
2.12深入學習:如何為類命名63
2.13深入學習:#import和@import64
第3章通過ARC管理內存65
3.1棧65
3.2堆66
3.3指針變量與對象所有權66
3.4強引用與弱引用70
3.5屬性75
3.6深入學習:屬性合成81
3.7深入學習:Autorelease池與ARC歷史83
第4章視圖與視圖層次結構85
4.1視圖基礎86
4.2視圖層次結構86
4.3創建UIView子類88
4.4在drawRect:方法中自定義繪圖94
4.5關於開發者文檔105
4.6初級練習:繪制圖像106
4.7深入學習:CoreGraphics106
4.8高級練習:陰影和漸變108
第5章視圖:重繪與UIScrollView111
5.1運行循環和重繪視圖112
5.2類擴展114
5.3使用UIScrollView115
第6章視圖控制器119
6.1創建UIViewController子類120
6.2另一個視圖控制器123
6.3UITabBarController130
6.4視圖控制器的初始化方法134
6.5添加本地通知135
6.6加載和顯示視圖136
6.7與視圖控制器及其視圖進行交互138
6.8初級練習:增加一個標簽項139
6.9中級練習:控制邏輯139
6.10深入學習:鍵值編碼139
6.11深入學習:Retina顯示屏140
第7章委托與文本輸入143
7.1文本框(UITextField)143
7.2委托146
7.3協議148
7.4向屏幕中添加UILabel對象150
7.5運動效果152
7.6使用調試器153
7.7深入學習:main()與UIApplication157
7.8中級練習:捏合—縮放157
第8章UITableView與UITableViewController159
8.1編寫Homepwner應用159
8.2UITableViewController160
8.3UITableView數據源164
8.4UITableViewCell對象170
8.5代碼片段庫175
8.6初級練習:表格段178
8.7中級練習:固定行178
8.8高級練習:修改UITableView對象的外觀178
第9章編輯UITableView179
9.1編輯模式179
9.2增加行185
9.3刪除行187
9.4移動行188
9.5初級練習:更改「刪除」按鈕的標題190
9.6中級練習:禁止移動某個表格行190
9.7高級練習:徹底禁止移動某個表格行190
第10章UINavigationController191
10.1UINavigationController對象192
10.2額外的視圖控制器196
10.3UINavigationController的導航功能201
10.4UINavigationBar205
10.5初級練習:顯示數字鍵盤210
10.6中級練習:關閉數字鍵盤210
10.7高級練習:壓入更多視圖控制器210
第11章相機211
11.1通過UIImageView對象顯示照片212
11.2通過UIImagePickerController拍攝照片216
11.3創建BNRImageStore220
11.4NSDictionary222
11.5創建並使用鍵225
11.6使用BNRImageStore227
11.7關閉鍵盤228
11.8初級練習:編輯照片230
11.9中級練習:刪除照片230
11.10高級練習:CameraOverlay230
11.11深入學習:導航實現文件230
11.12深入學習:攝像233
第12章觸摸事件與UIResponder235
12.1觸摸事件235
12.2創建TouchTracker應用237
12.3實現BNRDrawView,完成繪圖功能239
12.4處理觸摸事件並創建線條對象240
12.5初級練習:保存與讀取245
12.6中級練習:顏色245
12.7高級練習:圓圈246
12.8深入學習:響應對象鏈246
12.9深入學習:UIControl247
第13章UIGestureRecognizer與UIMenuController249
13.1UIGestureRecognizer子類250
13.2用UITapGestureRecognizer對象識別「按下」手勢250
13.3同時添加多種觸摸手勢252
13.4UIMenuController254
13.5UILongPressGestureRecognizer256
13.6UIPanGestureRecognizer以及同時識別多個手勢257
13.7深入學習:UIMenuController與UIResponderStandardEditActions260
13.8深入學習:再談UIGestureRecognizer261
13.9中級練習:修正錯誤262
13.10高級練習:速度與寬度262
13.11高級練習:顏色262
第14章調試工具263
14.1儀表263
14.2Instruments265
14.3靜態分析器275
14.4項目、目標和構建設置277
第15章自動布局入門283
15.1通用化Homepwner283
15.2自動布局系統285
15.3在InterfaceBuilder中添加約束289
15.4調試約束問題298
15.5初級練習:打造完美界面306
15.6中級練習:通用化Quiz307
15.7深入學習:使用_autolayoutTrace方法調試約束問題307
15.8深入學習:使用多個XIB文件308
第16章在代碼中使用自動布局309
16.1視覺化格式語言310
16.2創建約束311
16.3添加約束312
16.4固有內容大小315
16.5另一種添加方式316
16.6深入學習:NSAutoresizingMaskLayoutConstraint318
第17章自動轉屏,UIPopoverController與模態視圖控制器321
17.1自動轉屏321
17.2自動轉屏通告機制324
17.3UIPopoverController326
17.4更多的模態視圖控制器329
17.5線程安全的單例337
17.6初級練習:為另一個類添加線程安全的單例339
17.7高級練習:UIPopoverController對象的外觀339
17.8深入學習:位掩碼339
17.9深入學習:視圖控制器之間的關系340
第18章保存、讀取與應用狀態345
18.1固化345
18.2應用沙盒348
18.3NSKeyedArchiver與NSKeyedUnarchiver350
18.4應用狀態與狀態切換353
18.5通過NSData將數據寫入文件356
18.6NSNotificationCenter和內存過低警告358
18.7模型—視圖—控制器—存儲設計模式361
18.8初級練習:PNG361
18.9深入學習:應用的狀態切換362
18.10深入學習:文件系統的讀取和寫入363
18.11深入學習:應用程序包366
第19章創建UITableViewCell子類369
19.1創建BNRItemCell369
19.2處理圖片377
19.3由UITableViewCell對象轉發動作消息380
19.4捕獲變量385
19.5初級練習:設置顏色386
19.6高級練習:縮放387
19.7深入練習:UICollectionView387
第20章動態字體389
20.1使用用戶首選字體390
20.2響應用戶首選字體的改變392
20.3修改自動布局約束393
20.4確定用戶首選字體大小395
20.5修改BNRItemCell397
第21章Web服務與UIWebView403
21.1Web服務404
21.2UIWebView414
21.3認證信息416
25.4中級練習:加強UIWebView418
21.5高級練習:課程預告418
21.6深入學習:HTTP請求主體419
第23章CoreData431
23.1對象—關系映射431
23.2用CoreData重寫BNRItemStore的數據保存功能432
23.3再談SQL450
23.4Faults451
23.5各種存取機制的優缺點453
23.6初級練習:Asset的iPad界面454
23.7中級練習:增加BNRAssetType對象454
23.8高級練習:顯示某種類型的BNRItem對象454
第24章狀態恢復455
24.1狀態恢復的工作原理455
24.2啟用狀態恢復456
24.3恢復標識和恢復類457
24.4狀態恢復與應用生命周期459
24.5恢復視圖控制器461
24.6編碼狀態數據464
24.7保存視圖狀態465
24.8中級練習:為另一個應用啟用狀態恢復467
24.9深入學習:設置快照467
第25章本地化469
25.1通過NSNumberFormatter實施國際化470
25.2資源的本地化473
25.3NSLocalizedString()與字符串對照表477
25.4初級練習:再添加一套本地化資源480
25.5深入學習:NSBundle在國際化過程中的作用480
25.6深入學習:不通過基礎國際化對XIB文件實施本地化481
第26章NSUserDefaults483
26.1NSUserDefaults483
26.2設置束487
第27章控制動畫491
27.1基礎動畫491
27.2關鍵幀動畫494
27.3在動畫完成后執行特定的代碼496
27.4彈簧動畫497
27.5中級練習:提升Quiz的用戶體驗498
第28章UIStoryboard499
28.1創建Storyboard文件499
網路書店 類別 折扣 價格
  1. 新書
    87
    $521