Masonry使用
2016-04-24 20:28
288 查看
mas_equalTo和equalTo
默认情况下
mas_equalTo有自动包装功能,比如自动将20包为@20
equalTo没有自动包装功能
如果添加下面的宏,那么mas_equal和equalTo就没有区别
#define MAS_SHORTHAND_GLOBALS
注意:这个宏一定要添加到#import "Masonry.h"前面
mas_width和width
默认情况下
width是make对象的一个属性,用来添加宽度约束用的,表示对宽度进行约束
mas_width是一个属性值,用来当做equalTo的参数,表示某个空间的宽度属性
如果添加了下面的宏,mas_width也可以写成width
#define MAS_SHORTHAND
默认情况下
mas_equalTo有自动包装功能,比如自动将20包为@20
equalTo没有自动包装功能
如果添加下面的宏,那么mas_equal和equalTo就没有区别
#define MAS_SHORTHAND_GLOBALS
注意:这个宏一定要添加到#import "Masonry.h"前面
mas_width和width
默认情况下
width是make对象的一个属性,用来添加宽度约束用的,表示对宽度进行约束
mas_width是一个属性值,用来当做equalTo的参数,表示某个空间的宽度属性
如果添加了下面的宏,mas_width也可以写成width
#define MAS_SHORTHAND
#import "ViewController.h" #define MAS_SHORTHAND #define MAS_SHORTHAND_GLOBALS #import <Masonry.h> @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; UIView *blueView = UIView.new; blueView.backgroundColor = [UIColor colorWithRed:183 / 255.0 green:211 / 255.0 blue:250 / 255.0 alpha:1]; [self.view addSubview:blueView]; UIView *redView = UIView.new; redView.backgroundColor = [UIColor redColor]; [self.view addSubview:redView]; CGFloat margin = 20; CGFloat height = 50; [blueView makeConstraints:^(MASConstraintMaker *make) { make.left.equalTo(self.view.left).offset(margin); make.right.equalTo(redView.left).offset(-margin); make.bottom.equalTo(self.view.bottom).offset(-margin); make.height.equalTo(height); make.top.equalTo(redView.top); make.bottom.equalTo(redView.bottom); make.width.equalTo(redView.width); }]; [redView makeConstraints:^(MASConstraintMaker *make) { make.right.equalTo(self.view.right).offset(-margin); }]; // /** 会将以前的所有约束删掉,添加新的约束 */ // [blueView mas_remakeConstraints:^(MASConstraintMaker *make) { // // }]; // // /** 将会覆盖以前的某些约束 */ // [blueView mas_updateConstraints:^(MASConstraintMaker *make) { // // }]; } /** *约束的类型: 1.尺寸: width/height/size 2.边界: left/leading/right/trailing/top/bottom 3.中心点: center/centerX/centerY 4.边界: edges */ - (void)test4 { UIView *blueView = UIView.new; blueView.backgroundColor = [UIColor colorWithRed:183 / 255.0 green:211 / 255.0 blue:250 / 255.0 alpha:1]; [self.view addSubview:blueView]; [blueView makeConstraints:^(MASConstraintMaker *make) { make.width.equalTo(self.view.width); make.height.equalTo(self.view.height); make.centerX.equalTo(self.view.centerX); make.centerY.equalTo(self.view.centerY); }]; } - (void)test3 { UIView *blueView = UIView.new; blueView.backgroundColor = [UIColor colorWithRed:183 / 255.0 green:211 / 255.0 blue:250 / 255.0 alpha:1]; [self.view addSubview:blueView]; /** 距离父控件四周都是50间距 */ // [blueView mas_makeConstraints:^(MASConstraintMaker *make) { // make.left.mas_equalTo(self.view.mas_left).offset(50); // make.right.mas_equalTo(self.view.mas_right).offset(-50); // make.top.mas_equalTo(self.view.mas_top).offset(50); // make.bottom.mas_equalTo(self.view.mas_bottom).offset(-50); // }]; // [blueView mas_makeConstraints:^(MASConstraintMaker *make) { // make.left.mas_equalTo(self.view).offset(50); // make.right.mas_equalTo(self.view).offset(-50); // make.top.mas_equalTo(self.view).offset(50); // make.bottom.mas_equalTo(self.view).offset(-50); // }]; // [blueView mas_makeConstraints:^(MASConstraintMaker *make) { // make.left.offset(50); // make.right.offset(-50); // make.top.offset(50); // make.bottom.offset(-50); // }]; // [blueView mas_makeConstraints:^(MASConstraintMaker *make) { // make.left.top.offset(50); // make.right.bottom.offset(-50); // }]; [blueView mas_makeConstraints:^(MASConstraintMaker *make) { make.edges.mas_equalTo(self.view).insets(UIEdgeInsetsMake(50, 50, 50, 50)); }]; } - (void)test2 { UIView *blueView = UIView.new; blueView.backgroundColor = [UIColor colorWithRed:183 / 255.0 green:211 / 255.0 blue:250 / 255.0 alpha:1]; [self.view addSubview:blueView]; /** 尺寸限制: 父控件一半 位置: 居中 */ [blueView mas_makeConstraints:^(MASConstraintMaker *make) { make.size.mas_equalTo(self.view).multipliedBy(0.5); make.center.mas_equalTo(self.view); }]; } - (void)test1 { UIView *blueView = UIView.new; blueView.backgroundColor = [UIColor colorWithRed:183 / 255.0 green:211 / 255.0 blue:250 / 255.0 alpha:1]; [self.view addSubview:blueView]; /** 尺寸限制: 100 X 100 位置: 粘着父控件右下角,间距是20 */ /** 这个方法只会添加新的约束 */ [blueView mas_makeConstraints:^(MASConstraintMaker *make) { /** 在这个block里利用make对象创建新的约束 */ /** 尺寸约束 */ make.width.equalTo(@100); make.height.equalTo(@100); make.right.equalTo(self.view.mas_right).offset(-20); make.bottom.equalTo(self.view.mas_bottom).offset(-20); }]; }
相关文章推荐
- 水仙花数
- php关键字
- Servlet课程0424(二) 通过继承GenericServlet来开发Servlet
- Servlet课程0424(一) 通过实现Servlet接口来开发Servlet
- Google默认不跳转国别浏览器
- iOS设计模式之原型模式
- 数据库中关于左连接,右连接,内连接,外连接
- 【bzoj 1911】 [Apio2010]特别行动队
- javascript 正则表达式 获取全部分组内容
- 冒泡排序
- 学习计划--20160424
- Android View 的一些属性(复制转载过来的,做个笔记)
- 梦断代码阅读笔记1
- LintCode——删除链表中的元素
- Windows下git的安装与设置
- H5中的canvas元素
- Linux3.4.9编译内核过程
- 不完全node实践教程-总结
- ZeroNet创建博客后改名教程
- QGroundControl install