iOS适配分为两Auto—Layout和Masonry两种,Masonry就是基于Auto—Layout进行封装的第三方约束库,
Auto—Layout毕竟是原生的约束库,而Masonry有时因为约束不好,总会出现一些警告,虽然不会导致程序崩溃。
本人根据UI所给标注图加上公司要求,目前使用纯代码开发。所以,给出本人对Masonry的理解
1、Masonry的属性// 左侧@property (nonatomic,strong,readonly) MASConstraint *left;// 顶部@property (nonatomic,strong,readonly) MASConstraint *top;// 右侧@property (nonatomic,strong,readonly) MASConstraint *right;// 底部@property (nonatomic,strong,readonly) MASConstraint *bottom;// 首部@property (nonatomic,strong,readonly) MASConstraint *leading;// 尾部@property (nonatomic,strong,readonly) MASConstraint *trailing;// 宽@property (nonatomic,strong,readonly) MASConstraint *width;// 高@property (nonatomic,strong,readonly) MASConstraint *height;// 中心点x@property (nonatomic,strong,readonly) MASConstraint *centerX;// 中心点y@property (nonatomic,strong,readonly) MASConstraint *centerY;// 文本基线@property (nonatomic,strong,readonly) MASConstraint *baseline;这些属性与NSLayoutAttrubute的对照表如下43.jpg2、Masonry的三个函数//设置约束- (NSArray *)mas_makeConstraints:(void(^)(MASConstraintMaker *))block;
//如果之前已经有约束,则更新新的约束,如果没有约束,则添加约束
- (NSArray *)mas_updateConstraints:(void(^)(MASConstraintMaker *))block;
//将之前的约束全部删除,添加新的约束- (NSArray *)mas_remakeConstraints:(void(^)(MASConstraintMaker *make))block;equal和mas_equal区别
masequalTo 比equalTo多了类型转换操作,一般来说,大多数时候两个方法都是 通用的,
但是对于数值元素使用mas_equalTo。对于对象或是多个属性的处理,使用equalTo。
特别是多个属性时,必须使用equalTo,例如 make.left.and.right.equalTo(self.view);3、使用Masonry注意事项
UIView *sv = [UIView new];
//在做autoLayout之前 一定要先将view添加到superview上 否则会崩溃(报错为:不能找到父视图)
[self.view addSubview:sv];
//mas_makeConstraints就是Masonry的autolayout添加函数 将所需的约束添加到block中行了4、一般情况下,masonry约束使用
(1)设置边距make.edges.equalTo(self.view)//.with.insets(UIEdgeInsetsMake(10, 10, 10, 10));
(2)设置中心,大小
make.center.equalTo(ws.view);
//将size设置成(300,300)
make.size.mas_equalTo(CGSizeMake(300, 300));(3)设置上、下、左、右(或者设置上、左,宽、高)【1】 make.top.equalTo(v_scrollTimer.scrollView.mas_bottom);make.height.mas_equalTo(@(f_CalcRealHeightByiPhone6(170));make.left.equalTo(backView.mas_left);make.right.equalTo(backView.mas_right);【2】 make.centerX.equalTo(img_welcome.mas_centerX);make.width.mas_equalTo(@(15));make.height.mas_equalTo(@(18));make.bottom.equalTo(img_welcome.mas_bottom).offset(-5);

iOS-iOS下的Masonry适配相关推荐

  1. iOS 修改文字大小以适配lable高度宽度

    iOS 修改文字大小以适配lable高度宽度 在开发中,我们也许会遇到根据文字多少动态修改lable的高度,但也有lable高度和宽度是固定的,这个时候如果想让文字显示完全,就必须修改文字字体大小.动 ...

  2. iOS 11新特性与适配

    iOS 11新特性与适配 1. UIView变化 1.1. 更加方便的RTL边距设置 1.2. 安全区域 2. UIViewController变化 2.1. 废除API 2.1.1. `automa ...

  3. m3u8 video ios h5_【H5】iOS系统下的video视频播放完后重新刷新视频

    业务需求是H5页面中嵌套video视频,自定义控制视频暂停或者播放,但是对于ios系统下手机,会出现两个问题导致自定义播放事件失效: 1.ios系统下视频自动回放全屏幕播放 2.播放完之后定义在最后一 ...

  4. iOS 11 下 UICollectionView 出现滚动条被 HeaderView 遮挡的问题

    2019独角兽企业重金招聘Python工程师标准>>> iOS 11 下 UICollectionView 出现滚动条被 HeaderView 遮挡的问题 在使用了- collect ...

  5. 工业App能否成为继Android和iOS后下一个App开发者的春天?

    为什么需要工业互联网平台? 只要会Java或者C或者HTML5就可以开发手机上的App,但是工业App跟手机App不一样,需要跟设备打交道,需要听懂设备.读懂设备. 传统工业应用软件往往开发难度大.开 ...

  6. [iOS]ARC下循环引用的问题

    转载自:http://blog.cnbang.net/tech/2085/ [iOS]ARC下循环引用的问题 2013-8-30 最初 最近在开发应用时碰到使用ASIHttpRequest后在某些机器 ...

  7. 苹果iOS系统下的推送机制及实现

    苹果iOS系统下的推送机制及实现 浏览:785次  出处信息 width="336" height="280" frameborder="0" ...

  8. ios Mac下的SVN工具:Cornerstone与Versions和使用subversion管理iOS源代码

    原文地址为: ios Mac下的SVN工具:Cornerstone与Versions和使用subversion管理iOS源代码 ios管理代码的方式除了上次介绍的利用ios 自带的git库,还有使用S ...

  9. 寻宝游戏 - 利用iBeacon特性设计的iOS线下寻宝游戏 - 物联网小游戏

    寻宝游戏 - 利用iBeacon特性设计的iOS线下寻宝游戏 作者简介 科科香,程序员 方向:IoT,方案集成,喜好各种新鲜东东 转载请注明出处 iBeacon简介 iBeacon(下面简称Beaco ...

最新文章

  1. 一次线上生产问题的全面复盘 【定位-分析-解决】
  2. 内存泄露从入门到精通三部曲之常见原因与用户实践
  3. java学习笔记11--集合总结
  4. java对象的访问定位_JVM创建对象及访问定位过程详解
  5. 国家发钱了!研究生补贴一览表!
  6. 160 - 1 Acid burn
  7. php ueditor怎么用,ueditor PHP版本使用方法
  8. Python学习笔记_Day4_集合
  9. 【Unity】文字游戏制作插件Fungus教程(1)基础的使用方法
  10. Python爬虫实战+数据分析+数据可视化(汽车之家)
  11. java的inputbox_InputBox函数的使用方法
  12. c语言计算两个正整数的最大公约数
  13. 提高情商的书籍推荐,这些书能给你提高情商的训练方法
  14. [ZROI1788]计算器
  15. window7电脑如何调亮度
  16. PhoneGap移动开发框架
  17. PCB工程分享:快速了解PCB设计入门基础知识
  18. x86、i386、IA-32、amd64、x64、x86-64、IA-64的区别
  19. 数字信号处理——离散傅里叶变换
  20. 二分图的最小顶点覆盖 和 最大独立集 和 最大团

热门文章

  1. 盲人辅助模式Accessibility剖析
  2. PHP 源码加密 (zendGuard和ionCube)
  3. html手机电脑自动适应模块,CSS网页响应式布局实现自动适配Pc/Pad/Phone设备
  4. FaceNet论文翻译学习3
  5. Unity_代码方式添加绑定按钮点击事件
  6. 云顶之弈手游铁王八盾法阵容玩法讲解
  7. 战地5启动后直接弹回橘子
  8. 设备唯一标识/设备码/设备标识码
  9. “交通·未来”系列线上公益学术活动等你来~
  10. 菜鸟快递系统(南航2022数据结构课设第一题)