Masonry 很好,这个扩展让它变得更好!
以前,相对布局是一个点到点的赋值。以下是一个 view1 的 mas_make 例子
make.right.equalTo(view2.mas_left).offset(-10) view1 的右侧布局约束考虑的是特定的边缘,而不是特定的视图。.offset(-10) 也是类似的,因此我们需要思考它的值应该是正数还是负数。
equalTill() 提供了一种基于视图的赋值方法:在扁平布局中 make.right.equalTill(view2) 等于 make.right.equalTo(view2.mas_left) 这个机制的奇妙之处在于 .equalTill() 将查找约束的第一布局属性并决定哪个第二布局属性应该被选中。同样,make.top.equalTill(view2) 等于 make.top.equalTo(view2.mas_bottom)
gap() 提供了一个基于视图的偏移值 make.right.equalTo(view2.mas_left).gap(10) 等于 make.right.equalTo(view2.mas_left).offset(-10)
看到这里了吗?基于视图的扁平布局使您的生活更轻松!您不会混淆在相对布局中需要哪个边缘,并且它将自动完成 equalTill ()
还有一点,可以组合(当然您可以):make.right.equalTill(view2).gap(10)
pod 'Masonry-FlattenLayout'
doggy