我的代码如下所示:
import SwiftUI
struct DotView: View {
var body: some View {
GeometryReader { geo in
let width = geo.size.width
VStack() {
Circle()
.frame(width: width, height: width)
Spacer()
Circle()
.frame(width: width, height: width)
}
}
}
}
struct TestView: View {
var body: some View {
GeometryReader { geo in
VStack() {
HStack() {
Text("11")
DotView()
.frame(width: 8, height: 23, alignment: .center)
Text("22")
}
.font(.system(size: 48))
.background(Color.gray)
HStack() {
Text("123456789")
}
.font(.system(size: 30))
.background(Color.gray)
}
.frame(width: geo.size.width, height: geo.size.height)
.background(Color.blue)
}
}
}
struct TestView_Previews: PreviewProvider {
static var previews: some View {
TestView()
.frame(width: 200, height: 200, alignment: .center)
.cornerRadius(23.0)
}
}如下图所示,"11:22“和"123456789”之间有一个间隔。

但是,当我将视图DotView评论为下面的代码时:
struct TestView: View {
var body: some View {
GeometryReader { geo in
VStack() {
HStack() {
Text("11")
// DotView()
// .frame(width: 8, height: 23, alignment: .center)
Text("22")
}
.font(.system(size: 48))
.background(Color.gray)
HStack() {
Text("123456789")
}
.font(.system(size: 30))
.background(Color.gray)
}
.frame(width: geo.size.width, height: geo.size.height)
.background(Color.blue)
}
}
}

间隔消失了。为什么这个DotView会影响间距?
发布于 2021-06-13 14:10:04
您可以在VStack中TestView中添加“(空格: 0)”
VStack(间距: 0)

https://stackoverflow.com/questions/67958898
复制相似问题