masonry的使用介绍

masonry的使用介绍

  • 注意masonry两个宏的使用.
 #define MAS_SHORTHAND //如果定义了这个宏,那么使用masonry的时候,就可以省略mas_前缀 

//define this constant if you want to enable auto-boxing for default syntax
#define MAS_SHORTHAND_GLOBALS //如果定义了这个宏,那么它会把你传入的基本数据类型自动装箱成对象类型


/**** 注意:以上两个宏,只有定义在导入"Masonry.h"之前才有用,否则无效 *****/

第一种写法(常规)

 [blueView mas_makeConstraints:^(MASConstraintMaker *make) { 
 make.left.equalTo(self.view.mas_left).offset(50);
 make.right.equalTo(self.view.mas_right).offset(-50);
 make.top.equalTo(self.view.mas_top).offset(50);
 make.bottom.equalTo(self.view.mas_bottom).offset(-50);
 }];
设置上下左右四个距离,注意:右和底部,需要向上偏移所以需要写赋值
  • 省略原则,当需要参照的控件在同一侧(左边对左边)可以省略参照控件的方向.
  • 当偏移的值相同时,上左可以在一个里面写
 [blueView mas_makeConstraints:^(MASConstraintMaker *make) { 
 make.left.top.equalTo(self.view).offset(50);
 make.right.bottom.equalTo(self.view).offset(-50);
 }];
  • 一行代码搞定的简单布局,使用内边距,注意内边距都是正值.和offset不同
 [blueView mas_makeConstraints:^(MASConstraintMaker *make) { 
 //设置内边距一句代码搞定(注意内边距)
 make.edges.mas_equalTo(UIEdgeInsetsMake(50, 50, 50, 50));
 }];
  • 更新约束
 //更新约束 
 [blueView mas_updateConstraints:^(MASConstraintMaker *make) {
 make.left.equalTo(self.view).offset(100);
 }];
  • 重置约束,重置相当于删除原来的全部约束.
 //重置之前所有的约束(谁调用这个方法就重置谁的约束),重置相当于删除原来所有的约束 
 [blueView mas_remakeConstraints:^(MASConstraintMaker *make) {

 //添加重置后你想设置的约束
 make.left.top.equalTo(self.view).offset(100);
 make.right.bottom.equalTo(self.view).offset(-50);
 }];

你可能感兴趣的:(masonry的使用介绍)