PureAutoLayout 自动适配主要方法解析

PureAutoLayout是iOS自动布局的第三方库,它简化了官方AutoLayout的复杂性,支持Objective-c和所有版本的Swift。本文将解析其常用方法,包括子视图与父视图、子视图兄弟间、视图本身及视图数组的约束设置。理解并正确使用这些方法能提高布局效率,避免约束冲突导致的系统崩溃。
摘要由CSDN通过智能技术生成

对于开发者来着,与用户最近的距离就是通过app上的一个个界面,一个好的布局不仅能让开发者适配的工作量减少很多,也会给用户带来比较好的体验。

对于自动布局,最早的就属于Autoresizing Mask,在苹果没有推出AutoLayout之前,适配工作主要就靠Autoresizing Mask去完成,但随着要求的变高,只能约束具有等级关系的两个view,对于左右同等级的视图却达不到很好的控制。iOS6之后,苹果官方推出了AutoLayout,不仅包含了Autoresizing Mask的所有功能,而且对兄弟视图之间的约束有了更完美的控制。

但由于官方的布局写法太过繁琐,可谓又臭又长,可读性也比较不好。因此催生了一些在此基础上封装的第三方的自动布局库,如Masonry,以及本文要讲述的PureAutoLayout


我们可以清晰的看到,PureAutoLayout不仅支持Objective-c,还支持所有版本的Swift.。这也是他的优势所在。

其他不多说了,简单看一下他的内部结构吧
这里写图片描述
正如名字一样,内部结构也是一样的“Pure”,作者分别对UIView,NSArray和NSLayoutConstraint进行了拓展。方法名以auto开头,方便Xcode的提示。

常用方法

一,子视图与父视图之间的约束

autoCenterInSuperview  

autoCenterInSuperviewMargins

//处于superview的中心(Margin 是iOS8新增的一个属性,是View的一边与其子View对应的边的推荐最小距离,默认16.)
autoAlignAxisToSuperviewAxis:(ALAxis)axis

autoAlignAxisToSuperviewMarginAxis:(ALAxis)axis

//在superview的某一个轴的中心(ALAxisVertical相对父视图左右等距;ALAxisHorizontal上下等距)
autoPinEdgeToSuperviewEdge:(ALEdge)edge 

autoPinEdgeToSuperviewMargin:(ALEdge)edge

//距离superview的 左/右/上/下/ 的距离 默认和superview等bounds。
autoPinEdgeToSuperviewMargin:(ALEdge)edge relation:(NSLayoutRelation)relation 

//距离父视图某个边距的取值范围

其中:
typedef NS_ENUM(NSInteger, NS
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值