用途
NSLayoutConstraint就是一個(gè)約束奴艾,一個(gè)約束定義了兩個(gè)交互類之間需要滿足的布局約束體系。每一個(gè)約束就相當(dāng)于線性方程十嘿。
Creating Constraints(創(chuàng)建約束)
- +constraintsWithVisualFormat:options:metrics:views: 使用 VF 格式創(chuàng)建一個(gè)約束數(shù)組
- +constraintWithItem:attribute:relatedBy:toItem:attribute:multiplier:constant: 創(chuàng)建一個(gè)明確的約束。
約束的形式是這樣的: "view1.attr1 = view2.attr2 * multiplier + constant"
如果你的式子中沒(méi)有第二個(gè)視圖和屬性类溢。 可以使用 nil 和NSLayoutAttributeNotAnAttribute钥飞。
Activating and Deactivating Constraints
- active:約束是否進(jìn)行激活
- +activateConstraints: 激活容器數(shù)組中的每一個(gè)約束莺掠。
- +deactivateConstraints: 取消激活容器中的每一個(gè)約束。
Accessing Constraint Data
- priority:約束的優(yōu)先級(jí)
- firstItem:第一個(gè)視圖
- firstAttribute:第一個(gè)視圖屬性
- relation:視圖關(guān)系
- secondItem:第二個(gè)視圖
- secondAttribute:第二個(gè)視圖屬性
- multiplier:倍率
- constant:約束的大小(可以修改)
Identifying a Constraint
- identifier:約束的標(biāo)識(shí)符(名字)
Controlling Constraint Archiving
- shouldBeArchived:是否將要被歸檔
Constants
- NSLayoutRelation:約束關(guān)系的枚舉類型
- NSLayoutAttribute:布局屬性枚舉
- NSLayoutFormatOptions:格式屬性枚舉
- NSLayoutConstraintOrientation:布局方向?qū)傩悦杜e
- NSEdgeInsets:一個(gè)結(jié)構(gòu)體读宙,包含上下左右邊距
- NSLayoutPriority:約束的優(yōu)先級(jí)
- Layout Priorities:表明約束的相對(duì)重要性
- UILayoutPriority:向基本約束布局系統(tǒng)表明哪個(gè)約束更加重要
結(jié)束語(yǔ)
如果有不對(duì)的地方請(qǐng)及時(shí)指出彻秆,謝謝!=嵴ⅰ唇兑!