Masonry写法姿势大全,让约束属性随心所欲
2023-09-07 02:12:19
## Masonry写法姿势大全
对于Masonry的一些基本使用,相信有点基础的iOS开发同学肯定或多或少都知道,本文旨在介绍具体设置约束属性的各种姿势,适合用过Masonry的同学阅读。
温馨提示:Masonry老手可以忽略本文。
### 约束属性的三种关系
约束属性有三种关系,分别是等于,大于,小于。
* **等于** :表示两个视图的大小相等。
* **大于** :表示第一个视图的大小大于第二个视图的大小。
* **小于** :表示第一个视图的大小小于第二个视图的大小。
### 约束属性的各种姿势
#### 1. 等于
设置两个视图的大小相等,可以使用如下方式:
[view1 mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.equalTo(view2);
make.height.equalTo(view2);
}];
#### 2. 大于
设置第一个视图的大小大于第二个视图的大小,可以使用如下方式:
[view1 mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.greaterThanOrEqualTo(view2);
make.height.greaterThanOrEqualTo(view2);
}];
#### 3. 小于
设置第一个视图的大小小于第二个视图的大小,可以使用如下方式:
[view1 mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.lessThanOrEqualTo(view2);
make.height.lessThanOrEqualTo(view2);
}];
#### 4. 同时设置多个约束属性
可以同时设置多个约束属性,使用如下方式:
[view1 mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.equalTo(view2);
make.height.equalTo(view2);
make.top.equalTo(view3);
make.left.equalTo(view4);
}];
#### 5. 设置约束属性的优先级
可以设置约束属性的优先级,使用如下方式:
[view1 mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.equalTo(view2).priorityLow();
make.height.equalTo(view2).priorityHigh();
}];
#### 6. 设置约束属性的激活状态
可以设置约束属性的激活状态,使用如下方式:
[view1 mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.equalTo(view2).active = NO;
make.height.equalTo(view2).active = YES;
}];
### 结语
以上介绍了Masonry中约束属性的各种用法,希望能帮助开发者更好地使用Masonry进行布局。