Masonry的简单使用
2024-10-04 08:50:14
#import "RootViewController.h" #import "Masonry.h" @interface RootViewController () @end @implementation RootViewController - (void)viewDidLoad { [super viewDidLoad]; #pragma mark label // 添加约束,不需要这只frame UILabel *label = [UILabel new]; label.backgroundColor = [UIColor redColor]; // 添加父视图,视图添加完成之后才能进行布局 [self.view addSubview:label]; // 布局,实现布局方法 [label mas_makeConstraints:^(MASConstraintMaker *make) { // 距离上面50 // make:相当于你要布局的视图,equalTo(参照视图的对象),如果参照视图是self.view,可以不设置参照视图的属性(就是top) make.top.offset(); // 距离左边100; make.left.offset(); // 距离右边100 make.right.equalTo(self.view).offset(-); // 距离下面500 make.bottom.equalTo(self.view).offset(-); }]; #pragma mark label1 UILabel *label1 = [UILabel new]; label1.backgroundColor = [UIColor greenColor]; [self.view addSubview:label1]; // 布局label1 // 先布局参照视图,否则约束容易丢失 [label1 mas_makeConstraints:^(MASConstraintMaker *make) { //和label左边一致 // equalTo(自定义视图),需要设置视图的属性 // 如果是数值为0可以不写offset() make.leading.equalTo(label.mas_leading); //和label右边一致 make.trailing.equalTo(label.mas_trailing); //上边距离label50 make.top.equalTo(label.mas_bottom).offset(); // 高度60 // mas_equalTo(数值) make.height.mas_equalTo(); }]; #pragma mark label2 UILabel *label2 = [UILabel new]; label2.backgroundColor = [UIColor cyanColor]; [self.view addSubview:label2]; // 设置距离参照视图的内边距(上左下右) UIEdgeInsets padding = UIEdgeInsetsMake(, , , ); [label2 mas_makeConstraints:^(MASConstraintMaker *make) { // make.top.equalTo(self.view).offset(400); // make.left.equalTo(self.view).offset(100); // make.right.equalTo(self.view).offset(-100); // make.bottom.equalTo(self.view).offset(-100); // 设置约束视图的边界距离self.view边界值 make.edges.equalTo(self.view).insets(padding); }]; #pragma mark label3 UILabel *label3 = [UILabel new]; label3.backgroundColor = [UIColor orangeColor]; [self.view addSubview:label3]; [label3 mas_makeConstraints:^(MASConstraintMaker *make) { // 设置中心点一致 make.center.equalTo(label2); // 设置大小 // make.width = label2.width - 40 // make.height = label2.height - 60 make.size.equalTo(label2).sizeOffset(CGSizeMake(-, -)); }]; }
最新文章
- 快来熟练使用 Mac 编程
- [LeetCode] Paint House II 粉刷房子之二
- webservice客户端添加soap Header信息
- MySQL rename database如何做?
- BZOJ 3460 Jc的宿舍
- 使用UI Automation实现自动化测试 --工具使用
- codevs 3160 最长公共子串(SAM)
- 局域网动态ip
- Linux误删C基本运行库libc.so.6急救方法
- 浩哥解析MyBatis源码(一)——执行流程
- 学习MVC之租房网站(四)-实现Service层并进行单元测试
- Qt图片按原比例缩放
- #黑客攻防实战详解#[Chapter 1]
- python-flask-路由匹配源码分析
- Linq EF 根据字符列表排序或List根据列表排序以及Linq查询类型转换
- 原生js实现倒计时
- Tcl写法
- [Python爬虫]煎蛋网OOXX妹子图爬虫(1)——解密图片地址
- 一段遍历4X4表格,取出每个单元格内容组合成文本的JS代码
- pythonNet day07
热门文章
- 彻底领悟javascript中的this
- JAVA基础--事务处理
- Java 的Object类
- .NET反射
- STM32硬件IIC操作
- 企业证书APP发布流程 分类: ios相关 app相关 2015-06-10 11:01 212人阅读 评论(0) 收藏
- java.lang.UnsupportedClassVersionError: com/T : Unsupported major.minor version问题解决
- Learning How to Learn, Part 1
- pageX,clientX,screenX,offsetX区别
- builds error