Masonry适配
常用属性含义(View+MASShorthandAdditions.h)
Masonry NSAutoLayout 说明
left NSLayoutAttributeLeft 左侧
top NSLayoutAttributeTop 上侧
right NSLayoutAttributeRight 右侧
bottom NSLayoutAttributeBottom 下侧
leading NSLayoutAttributeLeading 首部
trailing NSLayoutAttributeTrailing 尾部
width NSLayoutAttributeWidth 宽
height NSLayoutAttributeHeight 高
centerX NSLayoutAttributeCenterX 横向中点
centerY NSLayoutAttributeCenterY 纵向中点
baseline NSLayoutAttributeBaseline 文本基线
常用方法:
1)三个添加约束方法区别
mas_makeConstraints 只负责新增约束 Autolayout不能同时存在两条针对于同一个对象的约束,否则会报错
mas_updateConstraints 针对上面的情况,会更新在block中出现的约束 不会导致两个相同约束的情况
mas_remakeConstraints 则会清除之前的约束,仅保留最新的约束
2)两个赋值方法区别(equalTo和mas_equalTo)
例子:在控制器上添加一个控件,距离控制器View上下左右各20
方式一逐个设置make.top.equalTo
方式二连续设置make.top.left.bottom.and.right.equalTo
方式三一次性设置 make.edges.equalTo
总结:
一.用法
1>给UIView添加一个分类,分类当中有三个方法来给UIView添加约束
2>通过Block的方式给UIView添加约束(代码更加集中,更加易于理解)
3>在block当中,统一使用MASConstraintMaker对象来添加约束
二.添加约束有三个方法
1>mas_makeConstraints : 添加新的约束(容易约束冲突)
2>mas_updateConstraints : 如果有旧的约束就更新旧的约束,如果没有,就添加新的约束
3>mas_remakeConstraints : 删除之前的约束,然后添加新的约束
三.语法
make.+属性 : 表示要给哪一个属性添加约束
equalTo(UIView.mas_属性) : 和哪一个UIView的什么属性,产生关系
.属性 : 理解为set方法
.mas_属性 : 理解为get方法
mas_equalTo(常量) : 可以直接给某一个属性赋值(比如宽和高)
offset : 偏移量,相当于NSLayoutConstrait中的常量
网友评论