ScrollView篇
-
ContentSize與屏幕等比
-
添加UIView[或StackView]做ContentView
添加ContentView -
設(shè)置滾動(dòng)方向
設(shè)置橫向滑動(dòng) - 設(shè)置寬度
3.1.control+??右鍵拖向控制器的View
拖出選項(xiàng)
3.2. 選擇Equal Widths,若豎向可選擇Heights
與屏幕等寬
3.3. 設(shè)置Multiplier為合適的比例
設(shè)置比例
3.4. 可見(jiàn)contentSize已設(shè)置完成
UIView篇
-
等寬視圖
- 約束方式 -
(可自由調(diào)整間距與邊距)
1.1. 先創(chuàng)建三個(gè)小視圖
三個(gè)顏色的UIView
1.2.紅色UIView添加top、left約束,(截圖Width勾錯(cuò)了,應(yīng)該是Height??)
左約束
1.3.綠色UIView添加top、對(duì)紅色UIView-left約束,(截圖Width勾錯(cuò)了,應(yīng)該是Height??)
中約束
1.4.黑色UIView添加top、對(duì)綠色UIView-left、right約束
右約束
1.5. 選中redViewgreenViewblackView一鍵添加Equal Widths
添加等寬約束
1.6. 可見(jiàn)已經(jīng)等寬啦
約束完成
1.7. 約束方式在于調(diào)整間距與邊距更加方便~
------分隔------
- StackView方式 -
(一般使用等邊距)-iOS9后可使用
2.1. 清除所有約束
Clear Contraints
2.2. 使用StackView,給其添加約束后,開(kāi)始使用
轉(zhuǎn)換StackView
2.3. 修改屬性
屬性調(diào)整
Axis -- 方向
Distribution -- 等比關(guān)系
Spacing -- 間距
- 完成啦,缺點(diǎn)就是間距是相等的,不能像約束一樣做
非對(duì)稱視圖
約束優(yōu)先級(jí)
- 普通約束,可見(jiàn)
Red View對(duì)Green Button有了依賴約束Tralling Spacing
相對(duì)約束 - 由于
Red View并沒(méi)有添加Width約束,若設(shè)置Green Button.Hidden隱藏,那么這條Tralling就會(huì)失效,因此需要一條新的約束保持約束平衡
依賴SuperView的約束 - 此時(shí)兩條約束產(chǎn)生了
沖突
我們需要接受:
當(dāng)一條有效約束失效后,另一條約束才生效(當(dāng)僅且有一條相同類別約束生效)因此需要設(shè)置
約束優(yōu)先級(jí) : Priority
修改約束優(yōu)先級(jí)
- 最后,將
Green Button進(jìn)行隱藏
4.1Red View對(duì)Green Button的約束依賴被打斷
4.2Red View將使用低優(yōu)先級(jí)約束進(jìn)行求值
4.3Red View根據(jù)低優(yōu)先級(jí)約束,適應(yīng)屏幕
















