VStack
和 HStack
创建堆栈?我们的 SwiftUI
内容视图必须包含一个或多个视图,这是我们希望它们显示的布局。 当我们一次想要在屏幕上显示多个视图时,通常需要告诉 SwiftUI
如何安排它们,这就是堆栈的存放位置。
堆栈-等同于 UIKit
中的 UIStackView
- 分为三种形式:水平(HStack),垂直(VStack)和基于深度(ZStack),当您要放置子视图以使其重叠时可以使用后者。
让我们从简单的事情开始。 这是一个文本视图:
Text("SwiftUI")
如果我们想在下面放置另一个,我们不能只创建第二个文本视图并希望达到最佳效果 – SwiftUI
不知道如何排列它们。
相反,我们需要将其放置在垂直堆栈中,以便我们的文本视图彼此重叠放置:
VStack {
Text("SwiftUI")
Text("rocks")
}
您会注意到,垂直堆栈位于屏幕的中心,标签也居中,并且标签之间也有一些自动间隔。
如果您希望水平并排放置标签,则将 VStack
替换为 HStack
,如下所示:
HStack {
Text("SwiftUI")
Text("rocks")
}