發表於2024-11-10
使用Interface Builder是UI開發的大勢所趨。
這是一本詳細講解如何使用 Interface Builder 的書籍,主要講解如何利用 Interface Builder快速、高效地開發 UI。本書從 Interface Builder 菜單、UIKit 控件這些基礎知識到如何使用Interface Builder 鮮為人知的高級功能、如何利用 Interface Builder 進行代碼的優化等都進行瞭詳細講解,內容覆蓋瞭利用 Interface Builder 開發 UI 所涉及的各個知識點。除此之外,本書還著重介紹瞭經常與 Interface Builder 配閤使用的 Auto Layout,以及很多與 UI 學習甚至與iOS 開發學習相關的知識。本書理論與實踐相結閤,理論部分全麵而且深入,讓讀者知其所以然,實踐部分不僅講到瞭在開發中經常遇到的情況,而且也關注瞭一些非常重要的細節。本書適閤想快速、高效地開發 UI,想學習 Interface Builder 的各個層次的開發人員閱讀,對於 iOS 的 UI 學習來說,本書也具有很強的指導意義。
郭曉亮
一直奮鬥在iOS開發一綫的大齡“碼農”,從iOS4開始就與Xcode ”糾纏”,像大多數人一樣,默默地享受著技術帶來的快樂和成就感;像大多數人一樣,沒有乾過“驚天動地”的項目,但歲月磨滅不瞭一顆熱愛技術的心。
對於大部分 iOS 開發者來說,UI 開發是日常工作的重要部分。快速高質地完成 UI 部分的開發,不僅對項目起到關鍵作用,還涉及開發者自身的生活品質。本書作者結閤自己實踐經驗,細緻講解瞭使用相關工具來高效且優雅地進行 UI 開發的方方麵麵。相信書中的知識點會成為你的開發工具箱中的一件利器。
王巍 (@onevcat),專注於 iOS 的開發者、ObjC 中國組織發起人
優秀的開發者應該想盡辦法把自己從重復勞動中解脫齣來,IB 無疑是 UI 開發的一件利器,像視圖創建、屬性設置、布局、跳轉等煩瑣代碼都可以變成 IB 裏的可視化的操作,熟練地使用它將大幅減少 UI 的開發和維護時間。本書作為 IB 的專題書,作者以豐富的經驗分享瞭從基礎用法、實踐再到進階技巧等很多內容,如果你正要學習使用 IB,那麼本書將是你的不二之選。
孫源(sunnyxx),資深 iOS 開發者、博主,熱愛分享和開源
如果你對Interface Builder心存抵觸,特彆是對 StoryBoard 沒有好感,那你可能是漏掉瞭一些正確的使用方式,或者是忽略瞭一些小技巧。本書從基本的概念講起,內容穿插瞭作者豐富的實踐經曆,並介紹瞭我們可能很少接觸,但又非常實用的方法,諸如 Object 、參考綫等。現在講解基礎概念的文檔書籍非常多,本書卻專注在你可能不知道的 Interface Builder 的知識。
靛青K,SwiftGG 成員、InfoQ 主編
第 1 章 Interface Builder 概要 ......................................... 1
1.1 Interface Builder 簡介 1
1.1.1 Interface Builder 是什麼 1
1.1.2 xib 是什麼 2
1.1.3 拓展學習:Bundle 概念的理解 4
1.1.4 理解 Bundle 對於 IB 的指導意義 5
1.1.5 storyboard 是什麼 5
1.1.6 nib 是什麼 6
1.1.7 storyboardc 是什麼 8
1.2 Interface Builder 的優點 9
1.2.1 開發和維護效率高 9
1.2.2 減少大量的 UI 代碼和“膠水代碼” 10
1.2.3 適配變得十分簡單 10
1.2.4 IB 也可以做一些非 UI 的事情 11
1.2.5 利用 IB 學習控件可以達到事半功倍的效果 11
1.3 Interface Builder 的缺點 11
1.3.1 IB 的執行效率沒有純代碼高 12
1.3.2 使用 IB 開發的過程中容易齣現一些小問題 12
1.3.3 有一定的學習成本 13
1.3.4 文件易衝突 13
1.3.5 沒有代碼錶達清晰 13
1.3.6 不利於代碼的封裝和工程架構的組織 13
1.4 Interface Builder 學習的特點 14
1.4.1 簡單、容易入門 14
1.4.2 容易犯錯誤 14
1.4.3 有很多“坑” ,需要積纍屬於自己的經驗 14
1.5 Interface Builder 的發展 15
1.6 拓展學習:CocoaPods 15
1.6.1 CocoaPods 介紹 15
1.6.2 Podfile 文件與 CocoaPods 的三種依賴方式 17
1.6.3 podspec 文件 18
第 2 章 使用 Interface Builder ......................................... 21
2.1 解決衝突 21
2.1.1 解決普通 IB 文件衝突 21
2.1.2 解決 Xcode 8 引起的 IB 文件衝突 22
2.2 創建 xib 文件 24
2.3 “關聯”xib 文件與源文件 24
2.3.1 “關聯”xib 文件與 UIView 子類的源文件 25
2.3.2 @IBOutlet 與 @IBAction 26
2.3.3 拓展學習:設計模式之 MVC 29
2.3.4 理解 File’s Owner 32
2.3.5 “關聯”xib 文件與 UIViewController 子類的源文件 33
2.3.6 總結 xib“關聯”源文件 34
2.4 使用 xib 36
2.4.1 使用與 UIView 子類源文件關聯的 xib 37
2.4.2 使用與 UIViewController 子類源文件關聯的 xib 44
2.4.3 xib 嵌套使用的問題 46
2.4.4 深入學習:加載非 main bundle 中的資源 48
2.5 拓展學習:創建 Bundle 51
2.5.1 使用簡單的方法創建普通的 Bundle 51
2.5.2 創建基於 macOS Bundle 的 Target 來獲得 Bundle 51
2.6 創建 storyboard 53
2.7 使用 storyboard 54
2.8 對比 xib 和 storyboard 的使用情況 55
2.9 拓展學習:App 啓動過程分析與 UIApplication 自定義舉例 56
第 3 章 全麵學習 xib.................................................. 63
3.1 操作頁麵 63
3.2 介紹 Utilities 中的檢查器 64
3.2.1 Show the File inspector(文件檢查器) 65
3.2.2 Show Quick Help inspector(快速幫助檢查器) 67
3.2.3 Show the Identity inspector(ID 檢查器) 67
3.2.4 Show the Attributes inspector(屬性檢查器) 69
3.2.5 Show the Size inspector(尺寸檢查器) 85
3.2.6 Show the Connections inspector(連接檢查器) 87
3.2.7 “連綫”方式總結 88
3.3 Show the Object library 菜單 91
3.4 在 xib 中使用 UITableView 94
3.4.1 將基於 sb 的工程變成基於 xib 的工程 94
3.4.2 利用 xib 簡單展示 UITableView 95
3.4.3 利用 xib 自定義 UITableViewCell 96
3.4.4 利用 xib 自定義 UITableViewCell 的使用 99
3.5 Asset Catalog 100
3.5.1 使用 Asset Catalog 101
3.5.2 Asset Catalog 的優缺點 104
第 4 章 在 Interface Builder 中使用 Auto Layout ........................ 105
4.1 IB 與 Auto Layout 105
4.1.1 學習 Auto Layout 的特點 105
4.1.2 在 IB 中使用 Auto Layout 的優缺點 106
4.2 深刻理解 Auto Layout 106
4.2.1 如何理解“Auto Layout 有彆於 frame 係統” 107
4.2.2 如何理解“添加約束” 110
4.2.3 如何理解“間接錶示” 111
4.3 約束 112
4.3.1 Auto Layout 的數學公式 112
4.3.2 約束屬性 113
4.3.3 約束關係 114
4.3.4 multiplier 與 constant 115
4.3.5 約束的創建與添加 115
4.3.6 約束的優先級 119
4.4 Auto Layout 相關菜單介紹 120
4.4.1 Update frames 介紹 120
4.4.2 Embed In Stack 介紹 123
4.4.3 Align 介紹 124
4.4.4 Add New Constraints 介紹 125
4.4.5 Resolve Auto Layout Issues 介紹 127
4.5 Show the Size inspector 再介紹 128
4.5.1 Constraints 菜單 128
4.5.2 Intrinsic Size――固有尺寸 130
4.5.3 Content Compression Resistance――壓縮阻力 131
4.5.4 Content Hugging――內容吸附 133
4.5.5 使用 NSLayoutConstraint 與 @IBOutlet“連綫” 134
4.6 設置約束的方法介紹 135
4.6.1 在 IB 中設置約束 135
4.6.2 用蘋果原生的 API 設置約束 136
4.6.3 用 VFL(Visual Format Language)設置約束 138
4.6.4 通過第三方庫設置約束 139
4.7 在 Interface Builder 中使用 Auto Layout 進行布局的實踐 140
4.7.1 用 Auto Layout 布局撥打電話頁麵 142
4.7.2 stackView 的使用 148
4.7.3 拓展學習:FDStackView 151
4.7.4 拓展學習: “黑魔法”――實現在低版本中使用高版本中纔存在的類 152
4.7.5 Auto Layout 的異類――UIScrollView 159
第 5 章 storyboard 全麵學習 .......................................... 164
5.1 Inspector 其他菜單和標簽的使用 165
5.1.1 使用 View Controller 165
5.1.2 使用 Page View Controller 167
5.1.3 使用 Table View Cell 169
5.2 使用 Extra View 171
5.3 使用 storyboard 中的 segue 173
5.3.1 使用 Relationship Segue 173
5.3.2 常見的 Segue 選項 175
5.3.3 如何利用 Segue 傳參 178
5.3.4 更靈活的 segue 179
5.3.5 自定義的 segue 180
5.3.6 拓展學習:iOS 中內存管理簡介 181
5.3.7 深入學習:Embed Segue 184
5.3.8 Embed Segue 與 UIPageViewController 的配閤使用 188
5.3.9 深入學習:Unwind segue 193
5.4 在 sb 中使用 UITableView 198
5.4.1 在 sb 中使用自定義 tableViewCell 199
5.4.2 在 sb 中給 UITableView 添加 tableHeaderView 和 tableFooterView 203
5.4.3 segue 在 UITableView 中的使用 204
5.4.4 在 sb 中使用靜態 cell 205
5.5 在 sb 中使用 UICollectionView 208
5.6 Use as Launch Screen 212
5.6.1 Launch Screen 的使用 212
5.6.2 使用 Launch Screen 的好處 213
第 6 章 Interface Builder 進階 ......................................... 217
6.1 Use Trait Variations 217
6.2 User Define Runtime Attribute 222
6.3 IB 文件的加載過程 224
6.4 本地化 228
6.4.1 本地化的介紹 228
6.4.2 文本的本地化 230
6.4.3 Info.plist 的本地化 234
6.4.4 圖片資源的本地化 235
6.4.5 App 內設置語言的本地化 236
6.5 Storyboard Reference 的使用 240
6.6 使用 RBStoryboardLink 242
6.7 用 Object 重構“神 VC” 244
6.7.1 使用 Object 245
6.7.2 用 Object 重構“神 VC”的思路 248
6.7.3 如何用好 Object 250
6.8 用 External Object 重構“神 VC” 251
6.8.1 xib 中 External Object 的使用 251
6.8.2 用 External Object 重構“神 VC”的思路 253
6.8.3 Object 和 External Object 總結 254
6.9 IB 中的關鍵字總結 256
6.9.1 @IBAction 256
6.9.2 @IBOutlet 257
6.9.3 @IBDesignable 258
6.9.4 @IBInspectable 263
6.9.5 User Defined Runtime Attributes、@IBDesignable、@IBInspectable 總結 265
第 7 章 在 Interface Builder 開發中的技巧和 bug ....................... 268
7.1 調整 View 的尺寸,使它與顯示內容的尺寸相適應 268
7.2 查看各個 View 之間的距離 269
7.3 在 IB 中添加參考綫 269
7.4 快速調整底層被擋住 View 的位置 270
7.5 快速查看 View 的 UI 層次關係 271
7.6 “連綫”小技巧 272
7.7 使用“吸管”快速設置顔色 273
7.8 IB 中的復製與粘貼 274
7.9 利用 Media Library 快速設置圖片 274
7.10 IB 開發中遇到的一些小 bug 275
iOS UI開發捷徑――利用Interface Builder高效、優雅地開發UI 下載 mobi pdf epub txt 電子書 格式 2024
iOS UI開發捷徑――利用Interface Builder高效、優雅地開發UI 下載 mobi epub pdf 電子書書看起來不錯,一直都是全代碼布局想學習一下更高效的開發方式
評分作者可能很牛B,但是寫的書真的不是站在初學者的立場上寫的,初學者看的話,絕對雲裏霧裏。
評分總共買瞭三本,想著學學iOS開發,多瞭解相關的書籍,提升下自己。。。
評分買瞭大概翻瞭一下 還沒顧上仔細看 但這方麵我一直想係統學習一下 苦於沒教程 過幾天閑下來好好看看
評分好
評分看得齣作者寫得很用心,不管是新手還是有一定經驗的開發者都能有所收貨,贊
評分點個贊?
評分這本書講的比較基礎和全麵 對我幫助很大 使用ib開發是以後的趨勢衷心希望作者可以再寫一本ib進階的書
評分需要用,就趕緊買瞭,買貴瞭,可惜價保過期兩小時,需要用,就趕緊買瞭,買貴瞭,可惜價保過期兩小時,
iOS UI開發捷徑――利用Interface Builder高效、優雅地開發UI mobi epub pdf txt 電子書 格式下載 2024