一.Masonry是什么:
答:是一个很好的三方,用来做适配的
二.怎么使用Masonry
1.先导入头文件
#define MAS_SHORTHAND
#define MAS_SHORTHAND_GLOBALS//加上这两个宏就不需要考虑父控件了
#import "Masonry.h"
2.添加约束
[confirmPayment mas_makeConstraints:^(MASConstraintMaker *make) {
}];
三.举例说明
1.基本使用(一个控件的布局)
__weak typeof (self) weakSelf = self;//防止循环使用
[confirmPayment mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.equalTo(weakSelf.view).with.offset(10);//距离上面10px
make.left.equalTo(weakSelf.view).with.offset(10);//距离左边10px
make.bottom.equalTo(weakSelf.view).with.offset(-10);//距离下边10px
make.right.equalTo(weakSelf.view).with.offset(-10); //距离右边10px
make.center.equalTo(weakSelf.view);//位于该父视图的中心
make.size.mas_equalTo(CGSizeMake(150, 60));//设置这个控件的大小
make.edges.mas_offset(UIEdgeInsetsMake(100, 10, 100, 10));//距离上左下右各为10px
}];
当导入宏
#define MAS_SHORTHAND
#define MAS_SHORTHAND_GLOBALS//加上这两个宏就不需要考虑父控件了
make.top.equalTo(weakSelf.view).with.offset(10);//距离上面10px
等同于
make.top.equalTo(10)//距离上面10px
2.多个控件(兄弟控件的布局)
UIView *view2 = [[UILabel alloc]init];
view2.backgroundColor = [UIColor yellowColor];
[self.view addSubview:view2];
[view2 mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(100, 100));
make.centerX.equalTo(view1);//view2跟view1的中心X对齐
make.top.equalTo(view1.mas_bottom).with.offset(20);//view2距离view1的下面10px
}];