SwiftUI图像无法正确显示为覆盖

时间:2020-07-23 18:56:44

标签: swift swiftui

我正在尝试实现一个自定义的“使用苹果登录”按钮:

Button(action: {
    
}) {
    RoundedRectangle(cornerRadius: 32)
        .frame(height: 48)
        .foregroundColor(colorScheme == .dark ? .white : .black)
        .overlay(
            HStack {
                Image("apple.white")
                    .frame(width: 32, height: 32)
                    .clipShape(Circle())
                Spacer()
                Text("Sign in with Apple")
                    .foregroundColor(colorScheme == .dark ? .black : .white)
                    .bold()
                Spacer()
            }
            .padding(.horizontal)
    )
        .padding(.horizontal)
}

作为静态RoundedRectangle看起来不错: variant

但是它不能正确显示为按钮的叠加层: enter image description here

我该如何解决?

1 个答案:

答案 0 :(得分:0)

这是因为默认情况下SwiftUI会着色按钮,请尝试添加:

.buttonStyle(PlainButtonStyle())

按钮。