Masonry

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中的常量

很重要的一点哦:要先把视图添加上去然后再设置约束

你可能感兴趣的:(Masonry)