SwiftUI标签文本和图像垂直未对齐

SwiftUI标签文本和图像垂直未对齐,swift,swiftui,xcode12,Swift,Swiftui,Xcode12,我正在使用SwiftUI的全新视图,在Big Sur上运行Xcode 12 beta 作为图像,我使用并找到了一个名为“play”的图像。但我注意到没有任何边界像素的自定义图像(即间距不是由图像引起的)也存在同样的问题,例如PDF图标,因此它可能与图像无关 在Apple的演示中,文本和图像应该自动正确对齐,但我看不到这一点 struct ContentView:View{ var body:一些观点{ 标签(“播放”,系统图像:“播放”) } } 结果如下: 你知道为什么图像(图标)和文本垂

我正在使用SwiftUI的全新视图,在Big Sur上运行Xcode 12 beta

作为图像,我使用并找到了一个名为
“play”
的图像。但我注意到没有任何边界像素的自定义图像(即间距不是由图像引起的)也存在同样的问题,例如PDF图标,因此它可能与图像无关

在Apple的演示中,文本和图像应该自动正确对齐,但我看不到这一点

struct ContentView:View{
var body:一些观点{
标签(“播放”,系统图像:“播放”)
}
}
结果如下:

你知道为什么图像(图标)和文本垂直错位吗

如果我们给按钮一个背景色,我们可以更准确地看到错位:

标签(“播放”,系统图像:“播放”)
.背景(颜色.红色)
结果如下:


可能是一个bug,因此值得向苹果提交反馈。同时,这里是基于自定义标签样式的工作解决方案

用Xcode 12b测试


@Sajjon您可以添加自定义视图作为解决方法,并在HStack中使用带有文本的图像

我也注意到了这一点。这可能是SF符号的问题,我们可能需要等待SF符号2。或者这可能是beta版的问题。非SF符号图标也有同样的问题,只是尝试了一个我在其他项目中使用过的PDF图标,它会将细节添加到问题中。。。
struct CenteredLabelStyle: LabelStyle {
    func makeBody(configuration: Configuration) -> some View {
        HStack {
            configuration.icon
            configuration.title
        }
    }
}

struct TestLabelMisalignment: View {
    var body: some View {
        Label("Play", systemImage: "play")
           .labelStyle(CenteredLabelStyle())
    }
}