美文网首页
Masonry 类之间的关系

Masonry 类之间的关系

作者: shareMind | 来源:发表于2018-07-13 19:26 被阅读9次

    MASConstraintMaker是一个工厂类,平时用到最多,常用UIView的约束,暴露出来的也只有这个类

    使用MASConstraintMaker实例化的make,去设置各个约束;

    上图来自文章

    MASConstraint是一个抽象基类,不允许进行实例化(),在其init()方法内,有一个断言;

    MASConstraint 分别有两个子类 MASViewConstraint MASCompositeConstraint,在实际运用中,这两个子类实现了主要的功能;

    MASViewConstraint 和 MASCompositeConstraint相同之处是继承了父类MASConstraint的方法属性;

    不同之处是MASViewConstraint 包装了MASViewAttribute信息,并且两者都分别实现了父类的方法;

    另外还有两个类:

    MASViewAttribute 实现了对view 和 NSLayoutAttribute的封装

    MASLayoutConstraint 继承自系统类NSLayoutConstraint,额外添加了mas_key属性

    总结:

    MASViewConstraint 、 MASCompositeConstraint、MASViewAttribute、MASLayoutConstraint

    实现了约束之前的关系配置,但最终的install都落在了MASConstraintMaker身上;

    UIView的一个Category

    MASConstraintMaker的实例 install方法

    相关文章

      网友评论

          本文标题:Masonry 类之间的关系

          本文链接:https://www.haomeiwen.com/subject/ujpspftx.html