美文网首页
Masonry 高度约束的三种方法

Masonry 高度约束的三种方法

作者: shareMind | 来源:发表于2018-07-14 17:26 被阅读54次

    UIView高度约束的三种方法(这里只是讨论equalTo(),这个block执行的结果)

    make.height.equalTo(@20); (@20可认为是一个NSValue代表)

    make.height.equalTo(self.view);

    make.height.equalTo(self.view.mas_height);

    执行equalTo() block,会有以下函数调用

    针对 self.secondViewAttribute = attribute讨论,Masonry重写了setter方法

    这就是为什么equalTo() block支持这三种方式

    _secondViewAttribute 是一个 MASViewAttribute实例对象,该类仅对UIView 和 NSLayoutAttribute进行包装;

    第一种:

    make.height.equalTo(@20),进行了类型判断+Typecode判断,对不同的属性进行不同的处理

    第二种: make.height.equalTo(self.view)

    依赖firViewAttribute提供的layoutAttribute 生成一个MASViewAttribute对象

    第三种:make.height.equalTo(self.view.mas_height);

    因为self.view.mas_height 是Masonry提供的类别方法,直接生成了一个MASViewAttribute

    相关文章

      网友评论

          本文标题:Masonry 高度约束的三种方法

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