IOS之Masonry约束的使用

Masonry是做约束的,类似苹果开发的约束,做屏幕的适配,有xib开发,纯代码开发,storyboard约束等其他第三方框架。

pod 加入

  pod 'Masonry', '~> 1.1.0'

懒得加版本直接写

pod 'Masonry'

pod install安装的时候,默认给你安装最新版本。截止我发稿的时候,2021年11月份,版本更新到1.1.0,我用软件只用最新版本。旧版本不用

需要用的地方包含一下头文件#import <Masonry/Masonry.h>,懒得重复包含,直接在pch文件包含一次即可。

//6.布局控制器的view[newVc.view mas_makeConstraints:^(MASConstraintMaker *make) {make.top.right.bottom.equalTo(self.view);make.left.equalTo(self.dockView.mas_right);}];

距离上右下和当前的view相等。
距离左边和停靠栏的右边的相等。
类似的,可以慢慢积累。
[citySearchResultController.view mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(self.view.mas_top);
//如果约束的边前后相等,那么后面的可以不写
// make.top.equalTo(self.view);
// make.left.right.bottom.equalTo(self.view);
// make.top.equalTo(self.tableView).offset(15);
make.edges.equalTo(self.tableView);

    }];

二. 对于某一自定义view如何约束到左下角呢:
解决方案如下:有2种方法

//  self.pathMenu.startPoint = CGPointMake(0, 0);//[self.pathMenu mas_makeConstraints:^(MASConstraintMaker *make) {//方法一:make.left.equalTo(self.view).offset(100);//方法一:make.bottom.equalTo(self.view).offset(-100);// make.left.equalTo(self.view.mas_left).offset(100);// make.bottom.equalTo(self.view.mas_bottom).offset(100);//}];self.pathMenu.startPoint = CGPointMake(100, -100);[self.pathMenu mas_makeConstraints:^(MASConstraintMaker *make) {//方法二:make.left.equalTo(self.view).offset(50);//方法二:make.bottom.equalTo(self.view).offset(-50);make.left.bottom.equalTo(self.view);}];

pathMenu当作是View的子类

案例3:

   [topView mas_makeConstraints:^(MASConstraintMaker *make) {make.left.top.right.offset(0);make.height.offset(115);}];//距离左上右 为 0 高度 115UIView *functionListView = [[UIView alloc]init];functionListView.backgroundColor = UIColor.purpleColor;[self.view addSubview:functionListView];[functionListView mas_makeConstraints:^(MASConstraintMaker *make) {make.left.right.bottom.offset(0);make.top.equalTo(topView.mas_bottom).offset(0);}];
//距离 下 左 右 为  0 距离 topView 的底部 为0

IOS之Masonry约束的使用相关推荐

  1. iOS动画 Masonry约束弹框动画animateWithDuration:

    [self.containtView mas_makeConstraints:^(MASConstraintMaker *make) { make.left.right.mas_equalTo(0); ...

  2. Masonry约束自定义TableViewCell自适应行高的约束冲突的问题

    问题@iOS-zhouyu类似 iOS Masonry约束自定义TableViewCell自适应行高的约束冲突的问题_上进求知,认真思辨的博客-CSDN博客_masonry tableviewcell ...

  3. iOS 快速定位约束冲突

    iOS 快速定位约束冲突 什么是约束冲突 当你使用 AutoLayout 布局,你添加的约束不满足或者会造成系统布局冲突的时候,控制台就会打印冲突日志. 约束冲突示例 [LayoutConstrain ...

  4. IOS之UIToolBar约束报错

    IOS之UIToolBar约束报错 . 使用纯代码创建UIToolBar,并已经设置toolBar1.translatesAutoresizingMaskIntoConstraints = false ...

  5. iOS第三方-Masonry使用技巧

    Masonry使用技巧 masonry git地址:https://github.com/SnapKit/Masonry 本文主要会讲到masonry英文文档(见上面的git地址)中提及到的使用说明, ...

  6. iOS:Masonry练习详解

    Masonry练习详解 添加约束的方式: 1.通过使用NSLayoutConstraints添加约束到约束数组中,之前必须设置translatesAutoresizingMaskIntoConstra ...

  7. iOS:Masonry 英文原档介绍

    Masonry 英文原档介绍: Masonry is still actively maintained, we are committed to fixing bugs and merging go ...

  8. 第三方 Masonry约束的使用

    给Autolayout披上一层漂亮的外衣之后,将其称为Masonry,但Masonry的本质还是Autolayout.可以理解为Masonry是对Autolayout的封装. 对于一个约束.他实际表示 ...

  9. iOS 布局 Masonry详解

    现在iPhone手机屏幕越来越多, 屏幕适配也越来越重要. Masonry就是为屏幕适配而生的三方框架. Masonry基础API mas_makeConstraints() 添加约束 mas_rem ...

最新文章

  1. 用AI打造科技公益新模式,腾讯发起公益创新挑战赛,聚焦三大社会问题
  2. hashcode java_hashCode方法的作用?
  3. STM32 电机教程 24 - ST MCLIB实战之无感变绝对式位置传感器
  4. mysql update 跳过重复_MySQL通过UPDATE / DELETE整合重复的数据记录
  5. Redis遇到的那些坑
  6. 原创精华:剖析亿级请求下的多级缓存
  7. Python 揭秘斐波那契定律,如何帮助码农分析股票?| 技术头条
  8. svn服务器新建项目,SVN 创建项目
  9. mysql表情存储报错问题
  10. halcon自带的案例学习
  11. 小坑远程shell工具
  12. 时域和频域和频谱的关系
  13. 系统漏洞是威胁计算机网络安全的形式,系统漏洞是威胁计算机网络安全的形式_网络 安全 银行 漏洞 川企_https 安全受到 威胁(2)...
  14. PREEMPT RT 实现原理
  15. python 保存图片
  16. qt 获取当前程序运行路径_Qt 程序获取程序所在路径、用户目录路径、临时文件夹等特殊路径的方法...
  17. wps画流程图交叉弧形_WPS3分钟画出高逼格的流程图
  18. 5、多线程:龟兔赛跑
  19. 【零基础】MT4/MT5一条语句让EA发微信消息推送
  20. 【求职】瓜子二手车 Java 方向面经

热门文章

  1. 高性能mysql 第六章_第六章 查询性能优化
  2. 决策树原理实例(python代码实现)_决策树原理实例(python代码实现)
  3. android studio 修改包名_android逆向笔记之初学者常用adb命令
  4. hal库选择滴答时钟函数_stm32h7“理解hal库框架”
  5. python爬虫面试问题_Python爬虫面试总结
  6. u大师u盘装系统win7_优盘如何装系统 u盘装系统的步骤
  7. 你真的会读datasheet吗?
  8. 搞嵌入式Linux,做底层还是应用?底层要掌握哪些技能?
  9. 【第二期】那些设计漂亮、有创意的电路板!
  10. Sobel边缘检测算法verilog实现及仿真