美文网首页
Masonry 笔记

Masonry 笔记

作者: 就用帅气点的昵称吧 | 来源:发表于2020-12-21 15:21 被阅读0次

    类似top和mas_top的区别

    top是MASConstraintMaker的属性,mas_top是view的分类属性。所以会有下面的代码:

    make.top.equalTo(self.view.mas_top).offset(10);

    因为平时我们肯定会用到类似UIView+Extension的分类,为了避免和这些分类中的方法重名,才会有类似mas_top、mas_center的出现。总之make后面用top,view后面用mas_top。

    equalTo和mas_equalTo的区别

    equalTo()后面参数的是一个对象,而mas_equalTo后面的参数为值。

      // 只要添加了这个宏,就不用带mas_前缀

      #define MAS_SHORTHAND

      // 只要添加了这个宏,equalTo就等价于mas_equalTo

     #define MAS_SHORTHAND_GLOBALS

    make.width.equalTo(view2);

    make.height.mas_equalTo(200);

    当然下面的写法也是正确的,在equalTo对象传入NSNumber对象

    make.height.equalTo(@200);

    inset、sizeOffset、offset、centerOffset的区别

    inset 只能描述Top,Left,Bottom, Right这几个属性的偏移量的,centerX、size等属性用inset设置偏移则无效。

    offset 是描述所有的NSLayoutAttribute对象,描述Top,Left,Bottom, Right的时候和inset通用

    make.top.equalTo(self.view).inset(10);

    make.top.equalTo(self.view).offset(10);

    这两句代码是一样的

    不过两者也有区别,inset和insets的用法差不多,值为正数时往视图内部偏移,负数则往远离视图的方向偏移。而offset后面设置的数值则是以坐标系为准。

    make.bottom.equalTo(self.view).inset(10);

    make.bottom.equalTo(self.view).offset(-10);

    这两句代码是等价的

    sizeOffset修饰size

    make.size.equalTo(view2).sizeOffset(CGSizeMake(10, -20));

    centerOffset

    make.center.equalTo(view2).centerOffset(CGPointMake(0, 100));

    相关文章

      网友评论

          本文标题:Masonry 笔记

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