ZTLayout
前言
ZTLayout 是对 SnapKit 的简单封装,布局时使用了自定义的操作符,大大减少了在有规律的连续布局工作中的代码量
其具体实现及Demo代码如下: Github 地址
仅供参考,希望有所帮助,如果你有什么好的方式,请告知,感谢。
以下为展示的效果例子及说明:
操作符
*>>: 设置布局参数
>>>: 为 view 添加 view,并返回 父view
/> "xx": 使用SnapKit为所有 子孙view 布局;右侧字符串可以填写任意字符,这样写是因为只有中继操作符才可以调整操作优先级
>>|: 进行>>>操作,并设置布局参数.equalToSuperviews = [{$0.right}]说明 view 右边必须与 superview 右边重合,用于设置 superview 宽度
>>/: 进行>>>操作,并设置布局参数.equalToSuperviews = [{$0.bottom}]说明 view 下边必须与 superview 下边重合,用于设置 superview 高度
>>>/: 进行>>>操作,并设置布局参数.equalToSuperviews = [{$0.right},{$0.bottom}]说明 view 右边和下边必须与 superview 右边和下边重合,用于设置 superview 宽高
====
嵌套操作符(最多三层,如需继续嵌套 使用
>>> {}闭包实现)
++>,++|,++/,++>/
+++>,+++|,+++/,+++>/
++++>,++++|,++++/,++++>/
代码演示
- 单层布局示例

代码:原始代码


简化1:可以省略 ZTLayout 对象的创建

简化2:使用操作符 >>/

简化3:闭包循环创建

简化4:*>> 操作符可以直接传入 ZTLayoutConfig 对象

- 多层嵌套示例

原始代码:

简化:使用操作符

- 多组 view 快速创建

代码:
























![[桜井宁宁]COS和泉纱雾超可爱写真福利集-一一网](https://www.proyy.com/skycj/data/images/2020-12-13/4d3cf227a85d7e79f5d6b4efb6bde3e8.jpg)

![[桜井宁宁] 爆乳奶牛少女cos写真-一一网](https://www.proyy.com/skycj/data/images/2020-12-13/d40483e126fcf567894e89c65eaca655.jpg)