《iOS Auto Layout開發秘籍(第2版)》是2014年由清華大學出版社出版的圖書,作者是撒敦。
基本介紹
- 書名:iOS Auto Layout開發秘籍(第2版)
- 作者:[美] Erica Sadun
- 出版社: 清華大學出版社
- 出版時間:2014年12月2日
- 定價:49.8 元
- 裝幀:平裝
- ISBN:9787302383062
圖書簡介,目錄,
圖書簡介
Auto Layout改變了創建iOS用戶界面的方式。它既靈活又強大,給予你對iOS用戶界面前所未有的控制,但AutoLayout的難度也是眾人皆知的。在《iOS Auto Layout開發秘籍(第2版)》中,享譽世界的iOS開發者和圖書作者Erica Sadun為你揭開了迷霧,幫助你通過“示例講解”這種最簡單的方法來精通Auto Layout。
目錄
第1章AutoLayout介紹 1
1.1AutoLayout的由來 1
1.2使用AutoLayout的好處 2
1.2.1幾何關係 3
1.2.2內容驅動的布局 5
1.2.3優先權規則 5
1.2.4檢查和模組化 5
1.2.5與Autosizing兼容 6
1.3約束 6
1.3.1可滿足性 7
1.3.2充分性 8
1.4約束屬性 10
1.5關於那些丟失的視圖 11
1.5.1欠約束導致丟失視圖 11
1.5.2規則不一致導致丟失視圖 12
1.5.3追蹤丟失的視圖 13
1.6有歧義的布局 13
1.6.1糾正有歧義的布局 14
1.6.2可視化約束 15
1.7內在內容大小 16
1.8壓縮阻力和內容吸附 17
1.9圖像裝飾元素 20
1.9.1對齊矩形 20
1.9.2可視化對齊矩形 20
1.9.3對齊inset 21
1.9.4聲明對齊矩形 23
1.9.5實現對齊矩形 24
1.10練習 26
1.11小結 27
第2章約束 29
2.1約束類型 29
2.2優先權 31
2.2.1衝突的優先權 31
2.2.2枚舉型優先權 32
2.3內容大小約束 33
2.3.1內在內容大小 33
2.3.2內容吸附 34
2.3.3壓縮阻力 35
2.3.4通過代碼設定內容大小約束 36
2.3.5在IB中設定內容大小約束 37
2.4構建布局約束 38
2.5布局約束類 39
2.5.1約束數學 39
2.5.2第一項和第二項 40
2.6創建布局約束 41
2.6.1構建NSLayoutConstraint實例 41
2.6.2一元約束 42
2.6.3不含視圖項的約束是不合法的 43
2.7視圖項 43
2.8約束、層次結構與邊界系統 44
2.9安裝約束 46
2.10比較約束 50
2.11布局約束法則 52
2.12練習 54
2.13小結 55
第3章InterfaceBuilder布局 57
3.1在IB中設計 57
3.2禁用AutoLayout 58
3.2.1在代碼中退出AutoLayout 59
3.2.2結合Autosizing和AutoLayout 60
3.3基本布局以及自動生成的約束 60
3.3.1推測的約束 61
3.3.2歧義消除約束 62
3.3.3尺寸約束 63
3.4IB元素指南 64
3.4.1約束列表 69
3.4.2Xcode標籤 70
3.4.3添加Xcode標識 71
3.5添加約束 72
3.5.1拖曳 73
3.5.2釘固和對齊 75
3.6預覽布局 76
3.7檢查約束 79
3.8視圖的SizeInspector 80
3.8.1框架矩形和布局矩形 80
3.8.2其他SizeInspector項 81
3.9處理選單 82
3.9.1更新框架和約束 82
3.9.2添加和重置約束 82
3.9.3清理約束 82
3.10約束/尺寸調整彈出選單 83
3.10.1Descendants選項 83
3.10.2SiblingsandAncestors選項 84
3.11視圖丟失問題 84
3.12平衡請求 86
3.13混合布局 88
3.13.1創建一個用於測試的nib檔案 88
3.13.2在代碼中加入nib檔案 89
3.13.3混合布局的優點 91
3.14移除IB生成的約束 92
3.15練習 92
3.16小結 95
第4章可視化格式 97
4.1可視化格式約束介紹 97
4.2選項 99
4.2.1對齊 100
4.2.2省略選項 100
4.3變數綁定 100
4.3.1間接的問題 101
4.3.2間接的替代方案 101
4.4度量 102
4.5格式字元串結構 103
4.6方向 104
4.7視圖名稱 104
4.8連線 105
4.8.1空連線 105
4.8.2標準間隔 106
4.8.3數字間隔 107
4.8.4引用父視圖 107
4.8.5與父視圖的間隔 107
4.8.6靈活間隔 108
4.8.7圓括弧 109
4.8.8負數 109
4.8.9優先權 110
4.8.10多視圖 110
4.9視圖尺寸 111
4.10格式字元串部件 113
4.11出錯 115
4.12NSLog和可視化格式 115
4.13約束到父視圖 116
4.14視圖拉伸 117
4.15約束尺寸 118
4.16創建列或者行 119
4.17匹配尺寸 120
4.18為何不能分布視圖 121
4.18.1偽分布視圖(第1部分:等中心) 121
4.18.2偽分布視圖(第2部分:間隔視圖) 124
4.19練習 126
4.20小結 127
第5章調試約束 129
5.1Xcode反饋 129
5.1.1開發反饋 129
5.1.2編譯器反饋 130
5.1.3運行時 130
5.2閱讀控制台日誌 131
5.2.1示例:自動尺寸調整問題 131
5.2.2解決方案:關閉自動尺寸調整轉換 132
5.2.3示例:AutoLayout衝突 133
5.2.4解決方案:調整優先權 134
5.2.5原子法 134
5.2.6平衡法 134
5.2.7追蹤歧義 135
5.3檢查約束日誌 135
5.3.1示例:對齊約束 136
5.3.2示例:標準間隔 136
5.3.3示例:基於等式的約束 136
5.3.4示例:複雜等式 137
5.3.5示例:乘數和常數 138
5.4布局數學中的一個注意點 138
5.5約束等式字元串 139
5.6添加名稱 142
5.6.1使用名稱標籤 142
5.6.2命名視圖 143
5.7描述視圖 144
5.8示例:意外的填充 146
5.9示例:圖像吸附 147
5.10示例:視圖居中 148
5.11向下遍歷報告 151
5.12示例:歧義 152
5.13示例:控制台輸出的擴展 153
5.14可視化約束 155
5.15啟動參數 156
5.16國際化 158
5.16.1加倍的字元串(iOS/OSX) 158
5.16.2翻轉界面(OSX) 159
5.16.3翻轉界面(iOS) 160
5.17概要分析Cocoa布局 162
5.18調試中的AutoLayout規則 163
5.19練習 163
5.20小結 164
第6章使用AutoLayout創建 165
6.1AutoLayout的基本原則 165
6.2布局庫 166
6.3界面設計 170
6.4模組化創建 171
6.5更新約束 173
6.5.1調用更新並以動畫形式顯示變化 174
6.5.2以動畫形式顯示OSX上的約束變化 175
6.5.3漸褪變化 175
6.6邊緣條件設計 176
6.7創建一個視圖抽屜 179
6.7.1創建抽屜布局 181
6.7.2管理被拖曳視圖的布局 184
6.7.3被拖曳的視圖 184
6.8視窗邊界 186
6.9練習 188
6.10小結 188
第7章布局解決方案 191
7.1表單元格 191
7.2保存圖像縱橫比 195
7.3等寬尺寸 197
7.4滾動視圖 198
7.4.1滾動視圖和純AutoLayout 199
7.4.2混合解決方案 199
7.4.3創建一個分頁式圖片滾動視圖 200
7.5居中視圖組 203
7.6自定義乘數和隨機位置 204
7.7創建柵格 207
7.8為鍵盤留出空間 209
7.9在運行時插入視圖 211
7.10運動效果、動態文本和容器 213
7.11練習 214
7.12小結 214
附錄A練習參考答案 215