SwiftUI ZStack:将一些子体与底部对齐,将一些子体与顶部对齐

SwiftUI ZStack:将一些子体与底部对齐,将一些子体与顶部对齐,swiftui,swiftui-zstack,Swiftui,Swiftui Zstack,作为我的应用程序的根视图,我有一个ZStack,我想添加两个浮动条,一个在视口的底部,一个在视口的顶部 使用单个条很容易对齐:.top,但是有没有办法添加多个子体,让一个对齐到顶部,另一个对齐到底部 我尝试从ZStack中删除对齐方式,并将.framealignment:.top/.framealignment:.bottom添加到子项,但这没有任何作用 是的,可以通过将顶部对齐的ZStack与另一个底部对齐的ZStack缠绕在一起来破解它,但它看起来相当不雅观。这里是可能的方法 ZStack

作为我的应用程序的根视图,我有一个ZStack,我想添加两个浮动条,一个在视口的底部,一个在视口的顶部

使用单个条很容易对齐:.top,但是有没有办法添加多个子体,让一个对齐到顶部,另一个对齐到底部

我尝试从ZStack中删除对齐方式,并将.framealignment:.top/.framealignment:.bottom添加到子项,但这没有任何作用


是的,可以通过将顶部对齐的ZStack与另一个底部对齐的ZStack缠绕在一起来破解它,但它看起来相当不雅观。

这里是可能的方法

ZStack {

 // content here

}
.overlay(YourTopView(), alignment: .top)
.overlay(YourBottomView(), alignment: .bottom)

另一个可能的变体是使用一个。覆盖VStack,有两个视图,中间有间隔。

这里是可能的方法

ZStack {

 // content here

}
.overlay(YourTopView(), alignment: .top)
.overlay(YourBottomView(), alignment: .bottom)
另一种可能的变体是使用一个.VStack覆盖,它有两个视图,中间有一个间隔。

您可以像这样在ZStack中添加一个VStack

ZStack{ VStack{ YourTopView 间隔棒 你的底视图 } } 您可以像这样在ZStack中添加一个VStack

ZStack{ VStack{ YourTopView 间隔棒 你的底视图 } }
非常感谢。这正是我想要的,感觉更清晰,更可读的语义!非常感谢。这正是我想要的,感觉更清晰,更可读的语义!谢谢,这也行得通-我原本希望间隔块阻止对底层内容的点击,但显然不行。谢谢,这也行得通-我原本希望间隔块阻止对底层内容的点击,但显然不行。