我有以下观点:
import SwiftUI
struct ContentView: View {
var body: some View {
ZStack{
Color.green.edgesIgnoringSafeArea(.all)
VStack {
HStack{
Text("header leading")
Spacer()
Text("header trailing")
}
// this makes the unexpected gap somehow
.padding(.horizontal)
.frame(height: 60)
.background(Color.red)
VStack{
Text("body top")
Spacer()
Text("body bottom")
}
.background(Color.blue)
}
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
为什么在红色的HStack和蓝色的VStack之间会出现这种差距?如果我删除填充,差距就消失了。
据我了解,填充仅应使水平缩进(前导和尾随)。为什么这个假设是错误的?