SwiftUI - 视图间距
间距是 SwiftUI 最重要的功能,它允许用户调整视图之间的间距。它增强了视图的外观并使其更具可读性。我们可以通过默认值或自定义调整来控制间距。在 SwiftUI 中,我们可以使用以下方法管理间距 −
spacer() 方法
spacing 属性
SwiftUI 中的 Spacer() 方法
Spacer() 方法用于在给定视图之间创建空间。与其他间距方法相比,它提供最大的空间。它通常用于堆栈布局,但我们可以在堆栈布局之外使用它。如果在堆栈布局中使用,则它会沿其包含堆栈的轴扩展。
假设它存在于 HStack 中,则它会沿 X 轴扩展。如果它存在于堆栈布局之外,则它会在所有轴上扩展。我们可以在同一个布局中使用多个 spacer()。
语法
以下是语法 −
Spacer(minLength:CGFloat?)
它只能接受一个可选参数,即 minLength。它表示 Spacer 将给定视图之间的空间缩小到的最小长度。
示例 1
以下 SwiftUI 程序在给定视图之间添加空间。
import SwiftUI struct ContentView: View { var body: some View { VStack{ HStack{ // Without Spacer Text("Hello").font(.title2) Text("TutorialsPoint").font(.title2) } HStack{ // With Spacer Text("Hello").font(.title2) Spacer() Text("TutorialsPoint").font(.title2) } } } } #Preview { ContentView() }
输出

示例 2
以下 SwiftUI 程序在给定视图之间添加空间。
import SwiftUI struct ContentView: View { var body: some View { VStack{ Text("Hello").font(.title2) Text("TutorialsPoint").font(.title2) } // Stack 布局之外的 Spacer() 方法 Spacer() VStack{ Text("Hello").font(.title2) Text("TutorialsPoint").font(.title2) } } } #Preview { ContentView() }
输出

SwiftUI 中的 Spacing 属性
我们还可以借助 Stack 布局的 Spacing 属性来调整视图的间距。此属性仅在堆栈布局中有效。它可以与包括 VStack、ZStack 和 HStack 在内的所有三个堆栈一起使用。
语法
以下是语法 −
VStack(spacing:value){ //code }
示例
以下 SwiftUI 程序使用间距属性在给定视图之间添加空间。
import SwiftUI struct ContentView: View { var body: some View { // 无间距参数的堆叠 VStack(){ Text("Hello").font(.title2) Text("TutorialsPoint").font(.title2) } // 带间距参数的堆叠 VStack(spacing:40){ Text("Hello").font(.title2) Text("TutorialsPoint").font(.title2) } } } #Preview { ContentView() }
输出
