SwiftUI 负填充 Z 顺序

Cay*_*ton 3 padding swiftui

因此,在 swiftUI 中,您可以使用负填充或负间距将 VStack 的两个元素放在彼此的顶部。

但究竟如何选择将哪个项目放在最上面呢?负填充可确保存在重叠,但不指定哪个视图将位于重叠的顶部。那么,我如何控制哪个视图位于顶部?

Asp*_*eri 5

希望一个容器可以通过.zIndex修饰符更改 z 顺序。默认情况下,所有视图都为 0(零),因此给出任何正值都会将修改后的视图推到最顶部,而任何负值会将视图推到底部。

VStack(spacing: 0) {
    Spacer()
    Color.green.padding(0).zIndex(1)           // << here !!
    Color.red.padding(-20)
    Spacer()
}
Run Code Online (Sandbox Code Playgroud)