ios - masonry第三方库使用自动布局(参考:http://www.cocoachina.com/ios/20141219/10702.html)
#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)的更多相关文章
- Swift中的Masonry第三方库——SnapKit
在OC开发时我常用一个名叫Masonry的第三方Autolayout库,在转Swift后发现虽然Swift可以混编OC,但总感觉有些麻烦,在Github上发现了这个叫做SnapKit的第三方库,发现使 ...
- IOS常用第三方库《转》
UI 动画 网络相关 Model 其他 数据库 缓存处理 PDF 图像浏览及处理 摄像照相视频音频处理 响应式框架 消息相关 版本新API的Demo 代码安全与密码 测试及调试 AppleWatch ...
- iOS常用第三方库大全,史上最全第三方库收集
下拉刷新 EGOTableViewPullRefresh – 最早的下拉刷新控件. SVPullToRefresh – 下拉刷新控件. MJRefresh – 仅需一行代码就可以为UITableVie ...
- Swift中的Masonry第三方库——SnapKit
在OC开发时我常用一个名叫Masonry的第三方Autolayout库,在转Swift后发现虽然Swift可以混编OC,但总感觉有些麻烦,在Github上发现了这个叫做SnapKit的第三方库 ...
- iOS之第三方库以及XCode插件介绍
前言 第三方库是现在的程序员离不开的东西 不光是APP开发 基本上所有的商业项目 都会或多或少的使用到第三方库 Github上Star>100的开源库数量如下 可以看到JS以绝对的优势排名第一 ...
- ios 引入第三方库 运行时找不到函数实现
今天引入webtrends 这个库,结果一直运行时找不到函数,纳闷了一下午! 后来发现,是other flag没有设置对,对于那些包含category用来扩展ios原始类型的库,链接的时候需要特别的链 ...
- iOS开发第三方库一 IQKeyboardManager
每一个iOS应用的开发者在工作中都会遇到需要用户键盘输入数据的需求,而输入框(UITextField/UITextView)的父界面可能是普通的UIView,也可能是UIScrollView,UITa ...
- iOS:第三方库使用非ARC编译
iOS: 解决某些第三方库因为ARC不能使用的问题 1.在target下面的build phases下有一个compile source,下面有很多待编译文件.可以看到一个compile flag,可 ...
- ios常用第三方库git下载地址
本文转载至 http://blog.csdn.net/cerastes/article/details/38348599 iOS第三方库下载常用git 1.FMDB https://github.co ...
随机推荐
- 怎么从传统的盒子思想转为Flex 布局(css)
前端进化很快,总是有新的技术出来,开始可能有些人用惯了盒子模型的思想 依赖 display属性 + position属性 + float属性.这三大件.它对于那些特殊布局非常不方便 我们就来看看Fle ...
- 【udacity】机器学习-神经网络
Evernote Export 1.神经网络 神经元 细胞的主体称为细胞体,然后有轴突.突触 他们构建的方式是可以调整的 我们会有一些输入的放电信号视为放电频率或输入的强度 X1w1X2w2X ...
- elasticsearch重建索引
1.重建索引 一个field的设置是不能被修改的,如果要修改一个Field,那么应该重新按照新的mapping,建立一个index,然后将数据批量查询出来,重新用bulk api写入index中 批量 ...
- PAT_A1126#Eulerian Path
Source: PAT A1126 Eulerian Path (25 分) Description: In graph theory, an Eulerian path is a path in a ...
- Python 字符串常用方法 day2
1.去空格和换行符: s = ' a bc ' print(s.strip())#strip(),去掉字符串两边的空格和换行符,无法去除中间的空格 print(s.rstrip())#rstrip() ...
- Selenium的定位元素
1.浏览器操作 # 刷新 driver.refresh() # 前进 driver.forward() # 后退 driver.back() 2.获取标签元素 # 通过ID定位目标元素 dri ...
- php第六讲
继承和静态 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...
- 关于 多个git用户或多个git管理工具切换时出现的问题总结
在这几天遇到了个比较头痛的问题 因为在同时使用多个git工具(gitlab,github.gitee)由于账户的问题和这个仓库指定地址,导致拉代码和推代码不能正常运行 问题解决: 对于多个git直接的 ...
- 当样式中存在!important时无法使用show()或hide() 2017-06-11 22:25 15人阅读 评论(0) 收藏
如果使用!important在你的样式中,比如display: none !important,此时就不能用show()了 但是我在查阅资料时发现有这样的解释, If using !important ...
- [\S\s]+ 可以匹配多行html,最常用的还是.*?
[\S\s]+ 可以匹配多行html,最常用的还是.*?