#import "ViewController.h"
#import "Masonry.h"
#define kWeakSelf(weakSelf) __weak typeof(self)weakSelf = self
#define WS(weakSelf) __weak __typeof(&*self)weakSelf = self
@interface ViewController ()
{
UIView *topView;
}
@end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad];
kWeakSelf(ws);
/**底部灰色view*/
topView = [[UIView alloc]init];
topView.backgroundColor = [UIColor lightGrayColor];
[ws.view addSubview:topView];
[topView mas_makeConstraints:^(MASConstraintMaker *make) {
make.center.equalTo(ws.view);
make.size.mas_equalTo(CGSizeMake(, )); }];
/**表面红色view*/
UIView *redView= [[UIView alloc]init];
redView.backgroundColor = [UIColor redColor];
[topView addSubview:redView];
[redView mas_makeConstraints:^(MASConstraintMaker *make) { make.edges.equalTo(topView).with.insets(UIEdgeInsetsMake(, , , )); }]; /**
创建三个等宽等高等间距view
*/
/**左边view*/
UIView *leftView = [[UIView alloc]init];
leftView.backgroundColor = [UIColor blueColor];
[redView addSubview:leftView];
/**右边view*/
UIView *rightView = [[UIView alloc]init];
rightView.backgroundColor = [UIColor brownColor];
[redView addSubview:rightView]; /**最有边view*/
UIView *lastView = [[UIView alloc]init];
lastView.backgroundColor = [UIColor yellowColor];
[redView addSubview:lastView]; CGFloat padding = .f;
//左边view添加约束
[leftView mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerY.mas_equalTo(redView.mas_centerY);
make.left.equalTo(redView.mas_left).with.offset(padding);
make.right.equalTo(rightView.mas_left).with.offset(-padding);
make.height.mas_equalTo(@);
make.width.equalTo(rightView);
}];
//右边view添加约束
[rightView mas_makeConstraints:^(MASConstraintMaker *make) { make.centerY.mas_equalTo(redView.mas_centerY);
make.left.equalTo(leftView.mas_right).with.offset(padding);
make.right.equalTo(lastView.mas_left).with.offset(-padding); make.height.mas_equalTo(@);
make.width.equalTo(lastView); }];
//最右边view添加约束
[lastView mas_makeConstraints:^(MASConstraintMaker *make) { make.centerY.mas_equalTo(redView.mas_centerY);
make.left.equalTo(rightView.mas_right).with.offset(padding);
make.right.equalTo(redView.mas_right).with.offset(-padding);
make.width.equalTo(rightView);
make.height.mas_equalTo(@);
}];
} - (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning]; } @end

ios - masonry第三方库使用自动布局(参考:http://www.cocoachina.com/ios/20141219/10702.html)的更多相关文章

  1. Swift中的Masonry第三方库——SnapKit

    在OC开发时我常用一个名叫Masonry的第三方Autolayout库,在转Swift后发现虽然Swift可以混编OC,但总感觉有些麻烦,在Github上发现了这个叫做SnapKit的第三方库,发现使 ...

  2. IOS常用第三方库《转》

    UI 动画 网络相关 Model 其他 数据库 缓存处理 PDF 图像浏览及处理 摄像照相视频音频处理 响应式框架 消息相关 版本新API的Demo 代码安全与密码 测试及调试 AppleWatch ...

  3. iOS常用第三方库大全,史上最全第三方库收集

    下拉刷新 EGOTableViewPullRefresh – 最早的下拉刷新控件. SVPullToRefresh – 下拉刷新控件. MJRefresh – 仅需一行代码就可以为UITableVie ...

  4. Swift中的Masonry第三方库——SnapKit

        在OC开发时我常用一个名叫Masonry的第三方Autolayout库,在转Swift后发现虽然Swift可以混编OC,但总感觉有些麻烦,在Github上发现了这个叫做SnapKit的第三方库 ...

  5. iOS之第三方库以及XCode插件介绍

    前言 第三方库是现在的程序员离不开的东西 不光是APP开发 基本上所有的商业项目 都会或多或少的使用到第三方库 Github上Star>100的开源库数量如下 可以看到JS以绝对的优势排名第一 ...

  6. ios 引入第三方库 运行时找不到函数实现

    今天引入webtrends 这个库,结果一直运行时找不到函数,纳闷了一下午! 后来发现,是other flag没有设置对,对于那些包含category用来扩展ios原始类型的库,链接的时候需要特别的链 ...

  7. iOS开发第三方库一 IQKeyboardManager

    每一个iOS应用的开发者在工作中都会遇到需要用户键盘输入数据的需求,而输入框(UITextField/UITextView)的父界面可能是普通的UIView,也可能是UIScrollView,UITa ...

  8. iOS:第三方库使用非ARC编译

    iOS: 解决某些第三方库因为ARC不能使用的问题 1.在target下面的build phases下有一个compile source,下面有很多待编译文件.可以看到一个compile flag,可 ...

  9. ios常用第三方库git下载地址

    本文转载至 http://blog.csdn.net/cerastes/article/details/38348599 iOS第三方库下载常用git 1.FMDB https://github.co ...

随机推荐

  1. Apex语言(三)原始数据类型

    1.原始数据类型(Primitive) 整数:Integer 双精度:Double 单精度:Decimal 长整型:Long 日期:Date 日期时间:Datetime 字符串:String ID:I ...

  2. Postgresql_最新版11.2源码编译安装

    pg官网:https://www.postgresql.org/ yum -y gcc gcc-c++ cmake ncurses-devel perl zlib* .去官网下载源码包. 下载地址:h ...

  3. 关于计算文字显示占用画面大小(System.Drawing.Graphics.MeasureString)

    最近遇到了一个需要手动为显示文字换行的场合,网上转了一圈,最后形成了下面的代码: var font = new Font("微软雅黑", 9F); - DETAIL_BASE_IN ...

  4. eas之f7

    f7控件实际上是一张单据.所以对于数据的修改实际上是需要修改单据的,是在eas中修改单据的元数据是组件.包括了f7控件,    F7是个快捷键,是某个字段符合条件的集合!    F7就是一个控件,用来 ...

  5. Win32_Window(day02)

    --- 窗口创建函数 ---#include <Windows.h> //窗口处理函数 HINSTANCE g_hIns; LRESULT CALLBACK WndProc(HWND hW ...

  6. 利用pandas库中的read_html方法快速抓取网页中常见的表格型数据

    本文转载自:https://www.makcyun.top/web_scraping_withpython2.html 需要学习的地方: (1)read_html的用法 作用:快速获取在html中页面 ...

  7. mkdir:创建目录

    mkdir:命令 1.命令详解 [功能说明] mkdir命令是“make  directories”中每个单词的粗体字母组合而成,其功能是创建目录,默认情况下,如果要创建的目录已经存在,则会提示此文件 ...

  8. salt 根据ip修改主机名

    首先定义pillar [root@web1 pillar]# cat hostname.sls ip_hostname: 10.1.1.1: web1 10.1.1.2: web2 10.1.1.3: ...

  9. vue cli 平稳升级webapck4

    webpack4 released 已经有一段时间了,插件系统趋于平稳,适逢对webpack3的打包速度很不满意,因此决定将当前在做的项目进行升级,正好也实践一下webpack4. 新特性 0配置 应 ...

  10. mysql连接错误,error1251解决方式

    解决此问题有两种方法,一种是更新navicat驱动来解决此问题,一种是将mysql用户登录的加密规则修改为mysql_native_password.本文采用第二种方式ALTER USER 'root ...