《iOS應用開發最佳實踐》
基本信息
做者: 王浩
出版社:電子工業出版社
ISBN:9787121207679
上架時間:2013-7-22
出版日期:2013 年8月
開本:16開
頁碼:552
版次:1-1
所屬分類:計算機 > 軟件與程序設計 > 移動開發
內容簡介
計算機書籍
《ios應用開發最佳實踐》對ios應用開發的方方面面進行了說明。全書分爲20章,系統地介紹了建立第1個iphone應用、objective-c語言開發基礎、設計iphone應用、導航欄視圖控制器和標籤欄視圖控制器、屬性字符串、ios控件應用入門、ios控件應用進階、應用及視圖生命週期、ios繪圖和自動旋轉、ios自動佈局、手勢識別技術、ios高級控件、passbook、集合視圖、ios多線程編程、數據持久化、core location定位和map kit、core motion動做管理器,以及icloud雲服務。全書的講解通俗易懂,按部就班,案例豐富,幫助讀者快速掌握ios開發技巧並可以作到觸類旁通、融會貫通。
《ios應用開發最佳實踐》適合有必定.net、java等開發經驗的開發人員、須要爲企業內部用戶開發ios應用的it人員、但願接觸和了解ios應用開發的人員,以及但願瞭解ios應用的各類特性的人員閱讀和參考。
目錄
《ios應用開發最佳實踐》
第1章 建立第1個iphone應用1
1.1 iphone應用開發的背景1
1.2 作好準備工做5
1.3 下載開發工具7
1.4 瞭解ios運行環境8
1.5 ios應用開發的注意點9
1.6 建立第1個hello world iphone應用10
1.6.1 經過xcode建立並運行iphone項目10
1.6.2 瞭解iphone應用的基本運行機理15
1.6.3 豐富你的iphone應用18
1.6.4 爲應用添加桌面圖標21
1.6.5 關於iphone 5應用的補充說明24
1.6.6 老版本應用的兼容性問題24
1.7 小結24
第2章 objective-c語言開發基礎25
2.1 objective-c的hello world程序26
2.2 建立一個objective-c類29
2.2.1 經過xcode建立person類29
2.2.2 對person類的解讀32
.2.2.3 類的構造方法36
2.2.4 繼承和多態38
2.2.5 選擇器(selector)43
2.3 經常使用類介紹45
2.3.1 nsstring類45
2.3.2 nsarray類48
2.3.3 nsdictionary類51
2.4 屬性(property)53
2.4.1 設置屬性53
2.4.2 以person類爲例53
2.4.3 @synthesize指令54
2.4.4 xcode 4.5之後版本對@synthesize指令的處理56
2.4.5 屬性特性56
2.5 內存管理58
2.6 類別(class category)59
2.7 類擴展(class extension)62
2.8 協議63
2.8.1 聲明協議63
2.8.2 使用協議63
2.8.3 更多協議的特性64
2.9 小結64
第3章 設計iphone應用——從零開始65
3.1 mvc架構65
3.2 基於nib文件開發單視圖交互性的應用67
3.1.1 建立交互性應用視圖67
3.1.2 鏈接視圖和視圖控制器72
3.1.3 建立事件處理代碼76
3.3 建立多視圖交互應用78
3.2.1 建立空應用79
3.2.2 添加主視圖81
3.2.3 添加子視圖85
3.2.4 進一步完善應用86
3.4 小結91
第4章 設計iphone應用——使用故事板92
4.1 故事板和segue92
4.2 完整的mvc應用94
4.2.1 建立視圖框架94
4.2.2 添加unwind segue98
4.2.3 經過unwind segue傳遞數據100
4.2.4 準備武俠故事模型103
4.2.5 經過segue傳遞數據105
4.2.6 完善詳情視圖並運行應用106
4.2.7 繼續完善應用——動態建立控件110
4.2.8 建立自適應文字長度的標籤控件112
4.3 容器視圖(container view)113
4.3.1 容器視圖的基本知識113
4.3.2 容器視圖的簡單例子114
4.3.3 實現子視圖控制器之間的互動(一)120
4.3.4 實現子視圖控制器之間的互動(二)122
4.4 小結125
第5章 導航欄視圖控制器和標籤欄視圖控制器126
5.1 導航欄視圖控制器介紹127
5.1.1 認識導航欄視圖控制器127
5.1.2 認識master-detail項目模板128
5.1.3 搭建導航欄視圖控制器項目131
5.1.4 經過代碼建立導航欄視圖控制器134
5.2 標籤欄視圖控制器介紹135
5.2.1 認識標籤欄視圖控制器135
5.2.2 認識tabbed application項目模板136
5.2.3 搭建標籤欄視圖控制器項目141
5.2.4 經過代碼建立標籤欄視圖控制器144
5.3 集成導航欄視圖控制器與標籤欄視圖控制器145
5.4 小結147
第6章 屬性字符串148
6.1 經過屬性字符串格式化文本148
6.1.1 經過屬性格式配置標籤文本150
6.1.2 屬性文本支持的控件151
6.2 經過代碼設置屬性字符串151
6.2.1 瞭解nsattributedstring類152
6.2.2 設置字間距和字體背景色154
6.2.3 設置陰影以及下畫線效果155
6.2.4 爲字符串不一樣部分設置不一樣效果156
6.2.5 設置段落效果157
6.2.6 能夠設置的屬性字符串樣式列表160
6.3 小結161
第7章 ios控件
應用入門162
7.1 ios控件簡介162
7.2 分段控件、文本框控件、滑塊控件163
7.2.1 分段控件介紹164
7.2.2 文本框控件介紹166
7.2.3 滑塊控件介紹169
7.2.4 建立展現項目171
7.2.5 在輸入完成後關閉鍵盤(一)176
7.2.6 在輸入完成後關閉鍵盤(二)177
7.2.7 點擊視圖退出鍵盤179
7.3 web視圖和活動指示器控件180
7.3.1 web視圖控件介紹180
7.3.2 活動指示器控件介紹182
7.3.3 建立展現項目184
7.4 圖像視圖控件189
7.4.1 圖像視圖控件介紹190
7.4.2 建立展現項目190
7.5 小結193
第8章 ios控件
應用進階195
8.1 進度視圖、開關和計步器控件195
8.1.1 進度視圖控件介紹195
8.1.2 開關控件介紹197
8.1.3 計步器控件介紹198
8.1.4 建立展現項目199
8.2 警告視圖、動做表單、活動視圖控制器202
8.2.1 警告視圖介紹203
8.2.2 警告視圖示例204
8.2.3 動做表單介紹(郵件視圖控制器)208
8.2.4 動做表單示例210
8.2.5 活動視圖控制器介紹215
8.2.6 活動視圖控制器示例216
8.3 日期選擇器(工具欄控件)218
8.3.1 日期選擇器控件介紹218
8.3.2 建立展現項目219
8.4 自定義選擇器226
8.5 自定義選擇器控件介紹226
8.5.1 數據源協議——uipicker-viewdatasource227
8.5.2 代理協議——uipicker-viewdelegate228
8.5.3 建立plist文件數據源229
8.5.4 讀取plist文件的方法233
8.5.5 單輪選擇器示例233
8.5.6 多輪選擇器示例237
8.6 小結241
第9章 應用及視圖生命週期242
9.1 應用的生命週期242
9.1.1 應用的不一樣狀態243
9.1.2 經過代碼模擬觀察應用生命週期245
9.1.3 應用程序的加載247
9.1.4 響應中斷248
9.1.5 進入後臺運行249
9.1.6 返回前臺運行250
9.1.7 關於main函數251
9.2 視圖生命週期252
9.2.1 視圖生命週期簡介252
9.2.2 視圖生命週期中的主要方法253
9.2.3 loadview方法253
9.2.4 與應用生命週期的互動254
9.3 小結256
第10章 ios繪圖和自動旋轉257
10.1 ios繪圖257
10.1.1 視圖和座標體系258
10.1.2 圖形顏色處理260
10.1.3 在上下文中繪製圖形261
10.1.4 手工繪圖應用示例264
10.2 自動旋轉270
10.2.1 旋轉屏幕271
10.2.2 使用自動尺寸處理旋轉273
10.2.3 經過代碼方式處理旋轉276
10.3 小結280
第11章 ios自動佈局281
11.1 經過約束處理屏幕旋轉282
11.1.1 約束應用示例282
11.1.2 約束應用詳解285
11.1.3 不一樣的約束類型——pin286
11.1.4 不一樣的約束類型——align290
11.1.5 視圖之間約束的互相做用293
11.2 經過代碼建立約束293
11.2.1 nslayoutconstraint類293
11.2.2 經過代碼建立約束:指定控件位置295
11.2.3 爲控件指定高度、寬度297
11.2.4 處理多個控件299
11.3 可視化格式語言302
11.3.1 constraintswithvisual- format:方法302
11.3.2 可視化格式語言的具體例子303
11.3.3 可視化格式語言的深刻304
11.4 小結306
第12章 手勢識別技術307
12.1 自定義手勢識別307
12.2 使用自動手勢識別器309
12.2.1 自動手勢識別開發原理309
12.2.2 離散性手勢與連續性手勢313
12.2.3 如何在模擬器中測試手勢315
12.2.4 識別輕掃手勢316
12.2.5 識別輕擊手勢319
12.2.6 識別捏合手勢320
12.2.7 建立自定義手勢識別器323
12.3 小結323
第13章 ios高級控件324
13.1 滾動視圖控件324
13.1.1 使用滾動視圖示例325
13.1.2 在滾動視圖中支持圖片放大和縮小328
13.1.3 滾動查看多個圖片330
13.1.4 關於滾動視圖控件的更多知識333
13.2 頁面指示器控件334
13.2.1 頁面指示器控件示例335
13.2.2 完善代碼:容許用戶點擊頁面指示器翻頁339
13.3 表格視圖340
13.3.1 表格樣式341
13.3.2 單元格樣式342
13.3.3 表格視圖元素344
13.3.4 數據源協議uitable- viewdatasource346
13.3.5 代理協議uitable- viewdelegate348
13.3.6 表格視圖示例348
13.3.7 建立自定義的表格單元格355
13.3.8 分段示例364
13.3.9 索引示例368
13.3.10 實現搜索欄369
13.4 小結376
第14章 passbook377
14.1 passbook初覽378
14.2 經過passsource.com建立憑證379
14.3 憑證的工做原理382
14.4 建立第1個憑證383
14.4.1 找到開發者團隊標識(teamidentifier)383
14.4.2 建立憑證類型標識(passtype-identifier)383
14.4.3 建立hello world憑證388
14.5 憑證文件包的構成395
14.6 pass.json文件396
14.6.1 頂級鍵的說明397
14.6.2 次級鍵的說明398
14.7 打折券憑證詳解400
14.8 登機牌憑證詳解402
14.9 經過passkit框架操做憑證406
14.9.1 passkit庫介紹406
14.9.2 passkit示例407
14.10 小結410
第15章 集合視圖 (uicollection-view)411
15.1 集合視圖基礎412
15.1.1 數據源協議(uicollectionview-datasource)413
15.1.2 代理協議(uicollectionview-delegate)414
15.1.3 建立第1個集合視圖應用414
15.1.4 集合視圖佈局(uicollectionview-layout)422
15.1.5 認識補充視圖(supplementary view)427
15.2 自定義集合視圖單元格429
15.3 小結431
第16章 ios多線程編程432
16.1 什麼是多線程432
16.2 ios的多線程知識433
16.2.1 派遣隊列dispatch queue434
16.2.2 程序塊block440
16.2.3 在視圖中經過gcd實現異步操做444
16.3 異步執行代碼的其餘方法447
16.3.1 經過performselector來異步執行447
16.3.2 經過nstimer來異步執行449
16.4 後臺運行應用449
16.5 小結452
第17章 數據持久化453
17.1 經過nsuserdefaults進行數據持久化453
17.1.1 建立持久化聯繫人信息應用454
17.1.2 保存用戶輸入的數據456
17.1.3 讀取用戶保存的數據458
17.2 應用程序沙盒460
17.3 經過屬性列表持久化數據463
17.4 歸檔對象465
17.4.1 實現nscoding協議466
17.4.2 歸檔對象或取消歸檔467
17.5 使用sqlite數據庫469
17.5.1 操做數據庫的sqlite函數469
17.5.2 使用sqlite 3的視圖應用473
17.6 使用core data480
17.6.1 使用core data480
17.6.2 經過代碼訪問數據模型486
17.6.3 得到nsmanaged- objectcontext對象489
17.6.4 如何插入、查詢、更新以及刪除數據490
17.7 小結493
第18章 core location定位和map kit494
18.1 core location框架494
18.1.1 位置管理器監控位置變化496
18.1.2 位置管理器監控方向變化497
18.1.3 使用位置管理器監控位置的例子498
18.2 map kit502
18.2.1 建立一個地圖應用502
18.2.2 自定義地圖顯示位置及範圍503
18.2.3 使用大頭針標註地理位置506
18.2.4 瞭解和使用mkannotationview509
18.3 小結513
第19章 core motion動做管理器514
19.1 動做管理器類515
19.1.1 檢測加速計數據517
19.1.2 檢測旋轉數據522
19.1.3 檢測組合信息523
19.2 捕獲動做事件524
19.3 小結524
第20章 icloud雲服務526
20.1 瞭解icloud雲服務526
20.2 雲存儲鍵/值對529
20.3 雲存儲文檔532
20.3.1 子類化uidocument532
20.3.2 如何定位ubiquity container534
20.3.3 如何經過nsmetadataquery查詢數據535
20.3.4 文檔的生命週期536
20.4 小結537