Masonry 轻量级布局框架的使用
iOS 提供了自动布局的方法,但是原生的方法使用太过麻烦 ,Masonry 框架提供了类似的方法,同样可以实现自动布局
,代码更加直观,而且容易理解。
Masonry 是一个轻量级的布局框架。拥有自己的描述语法,采用更优雅的链式语法封装自动布局,简洁明了并具有较高的可读性
,同时支持iOS和Mac OSX。某种意义上可以取代AutoLayout
1.Masonry配置
使用时只需要导入头文件 (Masonry.h)
2.Masonry 常用的方法
2.1Masonry 给视图添加布局条件的常用方法主要有以下三种:
1.创建新的约束条件
[view1 mas_makeConstrains:^(MASContraintMaker *make)];
2.如果之前有约束条件 ,则更新约束条件,如果没有则添加约束
[view1 mas_updateConstrains:^(MASConstrainMaker*make)];
3.将之前的约束条件全部删除 ,重新添加新的约束条件(重置约束条件)
[view1 mas_remakeContrains:^(MASContrainMaker*make)];
*说明;make代表当前视图的约束条件
2.2Masonry 的约束属性和方法
MASContraint 是一个抽象类 ,为视图提供了彼此之间的约束条件
*equalTo: 对齐
*greaterThanOrEqualTo:大于或超出
*lessThanOrEqualTo :小于或超出
priorityLow:优先级低
priorityMedium :优先级中等‘
priorityHigh ;优先级高
offset :位置偏移
sizeOffset: 大小偏移
centerOffset :中心偏移;
例如:(设置view1的位置和大小 1. 通过设置四周边界里控制位置和大小)
[view1 mas_makeContraints:^(MASContraintMaker *make){
//定制视图到四边的距离
make.top.equalTo:(self.view.mas_top).offset(20);//到顶部的距离
make.bottom.equalTo:(self.view.mas_bottom).offset(-200);//到底部的距离
make.left.equalTo:(self.view.mas_left).offset(50); //左侧的距离
make.right.equalTo:(self.view.mas_right).offset(-100);//右侧的距离
}];
设置view2 的位置和大小
[view2 mas_makeConstrains:^(MASConstraintMaker:*make){
make.left.equalTo:(self.view.mas_left).offset(100);
make.right.equalTo:(self.view.mas_right).offset(-100);
make.width.mas_equalTo(100);
make.height.mas_equalTo(200);
}];
Masonry 轻量级布局框架的使用的更多相关文章
- Masonry布局框架的使用
Masonry是一个轻量级的布局框架 拥有自己的描述语法 采用更优雅的链式语法封装自动布局 简洁明了 并具有高可读性.比我们使用自动布局,繁琐的约束条件,好用多了.下面我们来学学masonry的使用方 ...
- IOS控件布局之Masonry布局框架
前言: 回想起2013年做iOS开发的时候,那时候并没有采用手写布局代码的方式,而是采用xib文件来编写,如果使用纯代码方式是基于window的size(320,480)计算出一个相对位置进行布局,那 ...
- 2016 年 50 个最佳的轻量级 JavaScript 框架和库
作者:IT程序狮链接:https://zhuanlan.zhihu.com/p/24598210来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 回顾今年已发布的 JS ...
- 如何编写轻量级 CSS 框架
Github 地址: https://github.com/nzbin/snack Demo 演示: https://nzbin.github.io/snack/ 前言 这篇文章我已经酝酿了半年之久, ...
- 轻量级php框架phpk v1.0发布
phpk框架简介 PHPK是一个简单易用,易于扩展的轻量级PHP框架.phpk不仅仅是一个php框架,也是一个js框架,内置一套全新的js内库,完全摒弃了庞大的jquery,所有的前端都是一个全新的微 ...
- 微博轻量级RPC框架Motan
Motan 是微博技术团队研发的基于 Java 的轻量级 RPC 框架,已在微博内部大规模应用多年,每天稳定支撑微博上亿次的内部调用.Motan 基于微博的高并发和高负载场景优化,成为一套简单.易用. ...
- 轻量级ORM框架初探-Dapper与PetaPoco的基本使用
一.EntityFramework EF是传统的ORM框架,也是一个比较重量级的ORM框架.这里仍然使用EF的原因在于为了突出轻量级ORM框架的性能,所谓有对比才有更优的选择. 1.1 准备一张数据库 ...
- .NET轻量级MVC框架:Nancy入门教程(二)——Nancy和MVC的简单对比
在上一篇的.NET轻量级MVC框架:Nancy入门教程(一)——初识Nancy中,简单介绍了Nancy,并写了一个Hello,world.看到大家的评论,都在问Nancy的优势在哪里?和微软的MVC比 ...
- JustWeEngine - 轻量级游戏框架
JustWeEngine - 轻量级游戏框架 An easy open source Android game engine. Github地址 引擎核心类流程图 使用方法 引入Engine作为Lib ...
随机推荐
- [CF148E] Porcelain (分组背包)
题目链接:http://codeforces.com/problemset/problem/148/E 题目大意:有n组数据,每次可以从任意一组的两端取出1个数,问你取m个数最大能组成多少? 思路:先 ...
- GLSL语言基础
from http://www.kankanews.com/ICkengine/archives/120870.shtml 变量 GLSL的变量命名方式与C语言类似.变量的名称可以使用字母,数字以及下 ...
- oracle 认证方式
Oracle登录的时候有两种认证方式,一种是“操作系统认证”,一种是“口令文件认证”.1.当采取操作系统认证的时候,在本地用任何用户都可以以sysdba登陆:(默认方式)2.当采取口令文件认证的时候, ...
- Python urllib模块urlopen()与urlretrieve()详解
1.urlopen()方法urllib.urlopen(url[, data[, proxies]]) :创建一个表示远程url的类文件对象,然后像本地文件一样操作这个类文件对象来获取远程数据.参数u ...
- 2.openssl rsa/pkey
分别是RSA密钥的处理工具和通用非对称密钥处理工具.它们用法基本一致,所以只介绍openssl rsa. [root@xuexi tmp]# man rsa NAME rsa - RSA key pr ...
- 数据库dump导入
数据库dump导入 一.导入命令介绍: Oracle dump数据导入导出有两种方式:imp/exp.impdp/expdp.两者区别: 1.exp/imp客户端程序,受网络,磁盘的影响:impdp/ ...
- python some install tips
/* wooyun的小伙伴出了神器. 但是都是打包配置的.我本机又搭建了wamp,不能混合了,那就自己动手丰衣足食咯. */ python 2.7 已经安装. pip https://pip.pypa ...
- dockerfile学习与详解
1,什么是dockerfile? dockerfile是相当于docker使用的一个脚本,作用是便于实现自定义的镜像image,用语docker build [OPTIONS] PATH ,只需要指定 ...
- dmesg
在开机的时候你会发现有很多的讯息出现吧,例如 CPU 的形式.硬盘. 光盘型号及硬盘分割表等等,这 些信息的产生都是核心 (kernel) 在进行硬件的测试与驱动啦.要看这些讯息你可以用 dmesg ...
- xfire配置(java中的webservice)
开发时需要在src中新建META-INF=>xfire=>services.xml 这样编译出来就在classes文件夹下. services.xml配置 <?xml version ...