Swiftui 将SFSymbol添加到VStack会创建奇数间距

Swiftui 将SFSymbol添加到VStack会创建奇数间距,swiftui,sf-symbols,Swiftui,Sf Symbols,将SFSymbol添加到VStack内的HStack时,我在HStack后获得奇数间距。关于如何保持正常VStack间距的任何想法: 我添加了边框,这样你就可以看到发生了什么 struct ContentView:View{ var body:一些观点{ VStack{ HStack{ 垫片() 文本(“这是文本”) 垫片() } .边框(颜色为橙色,宽度为1) 文本(“你好,世界!”) .边框(颜色.红色,宽度:1) 文本(“FooBar”) .边框(颜色.蓝色,宽度:1) } } } 添

将SFSymbol添加到VStack内的HStack时,我在HStack后获得奇数间距。关于如何保持正常VStack间距的任何想法:

我添加了边框,这样你就可以看到发生了什么

struct ContentView:View{
var body:一些观点{
VStack{
HStack{
垫片()
文本(“这是文本”)
垫片()
}
.边框(颜色为橙色,宽度为1)
文本(“你好,世界!”)
.边框(颜色.红色,宽度:1)
文本(“FooBar”)
.边框(颜色.蓝色,宽度:1)
}
}
}

添加图像时:

struct ContentView:View{
var body:一些观点{
VStack{
HStack{
垫片()
文本(“这是文本”)
垫片()
图像(系统名称:“chevron.right”)
}
.边框(颜色为橙色,宽度为1)
文本(“你好,世界!”)
.边框(颜色.红色,宽度:1)
文本(“FooBar”)
.边框(颜色.蓝色,宽度:1)
}
}
}

您需要显式地将间距设置为0,如下所示(默认情况下,按类型,框架在两个项目之间都有默认间距)


太好了,谢谢。不过,额外的间距似乎是任意的。
   var body: some View {
      VStack(spacing: 0) {
         HStack {
            Spacer()
            Text( "This is text" )
            Spacer()
            Image( systemName: "chevron.right" )
         }
         .border( Color.orange, width: 1 )

         Text("Hello, World!")
            .border( Color.red, width: 1 )
         Text("FooBar")
            .border( Color.blue, width: 1 )
      }
   }