测试经过测试 | ✗ |
语言语言 | SwiftSwift |
许可证 | MIT |
发布日期上次发布 | 2018年3月 |
SPM支持 SPM | ✗ |
由 Andres Cecilia Luque 维护。
然而,又一个自动布局框架。为什么这个与众不同?
在 iOS9 中,苹果公司引入了 StackViews,作为一种更简单、更安全、更有效、更灵活的方式来配置布局(它们很棒;P)。但,在使用了很长一段时间之后,我发现它们太冗长了,当我想执行一个比通常更复杂一点简单布局更改时,需要大量代码行数。在最后,当视图布局在长度和复杂度上增长时,如此大量无序的代码行更容易出错,且难以阅读。
这个框架专用于 StackViews 来配置布局:基本上,你可以把它看作是基于 StackView 布局的语法糖。其好处是
hFixed 对应于具有高度约束的视图(红色)。hwFixed 对应于具有高度和宽度约束的视图(橙色)
UIStackView(hFixedView1, axis: .vertical, spacing: 10)
.nest(label, alignment: .center)
.nest(alignment: .center) {
$0.nest(hwFixedView1, hwFixedView2, axis: .horizontal, alignment: .top)
}
.nest(hFixedView2, margins: [.left + .right: 30]) // This way of setting the margins is provided by the framework SugarEdges
.snapEdges(in: contentView)
结果
要运行示例项目,克隆仓库,并使用 Xcode 打开位于 示例
文件夹下的工作区。
为了方便地使用 NestLayout 设置边距,建议(但不是必须)也安装 SugarEdges。
NestLayout 通过 CocoaPods 提供。要安装
它,只需将以下行添加到您的 Podfile 中
pod 'NestLayout'
Andrés Cecilia Luque (acecilia), [email protected]
NestLayout 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。