SwiftUI会在图像周围生成不需要的空间

SwiftUI会在图像周围生成不需要的空间,swiftui,Swiftui,下面的代码生成一个简单的VStack,其中的文本视图显示它们之间没有间距(第1行和第2行) 但是,将图像添加到第三行(绿色)会在整行的上方和下方添加不需要的间距 struct ContentView: View { var body: some View { VStack { HStack { Text("one thing") }.background(Color(.yellow)) HStack { Text("

下面的代码生成一个简单的VStack,其中的文本视图显示它们之间没有间距(第1行和第2行)

但是,将图像添加到第三行(绿色)会在整行的上方和下方添加不需要的间距

struct ContentView: View {
  var body: some View {
    VStack {
      HStack {
        Text("one thing")
      }.background(Color(.yellow))
      HStack {
        Text("nothing")
      }.background(Color(.red))
      HStack {
        Text("three")
        Image(systemName: "star")
          .resizable()
          .frame(width: 8, height: 8)
      }.background(Color(.green))
      HStack {
        Text("three things")
      }.background(Color(.red))
    }
  }
}
如何避免额外的多余空间

空间显示与图像大小无关(即使图像的尺寸只有几个像素)

当然,我想知道为什么会产生空间

谢谢你的帮助

以上代码截图:


您可以调整VStack的间距:

var body: some View {
            VStack (spacing: 0) {
                 HStack {
                   Text("one thing")
                 }.background(Color(.yellow))
                 HStack {
                   Text("nothing")
                 }.background(Color(.red))
                 HStack {
                   Text("three")
                   Image(systemName: "star")
                     .resizable()
                     .frame(width: 8, height: 8)
                 }.background(Color(.green))
                 HStack {
                   Text("three things")
                 }.background(Color(.red))
               }
             }

嗯,是的。工作完美。仍然想知道为什么通过添加图像来增加间距…这花了太长时间才找到感谢您的帮助。我的图像在3个VStack中,奇怪的是,我必须将中间VStack的间距设置为0才能修复此问题。