gpt4 book ai didi

SwiftUI 更改 SF Symbol 内部透明部分的颜色

转载 作者:行者123 更新时间:2023-12-03 20:11:05 31 4
gpt4 key购买 nike

我正在尝试更改 SF Symbol 内部清晰(透明)部分的颜色叫 delete.left.fill .到目前为止,我已经尝试如下

Button(action: { return }, label: {
Image(systemName: "delete.left.fill")
.background(Color.black)
//.accentColor(.black)
.font(.system(size: self.fontSize*0.75))
})
.frame(width: self.width, height: self.width)
.foregroundColor(.lightGray)
//.background(Color.black)

当我运行上面的代码时,结果就像

symbol .

起初, x符号内部与背景颜色相同。我想让它变黑。
  • 我试图设置 backgroundColorButton它使
    整体Button黑色的。
  • 我试图设置 accentColorImage
    黑色的。没有改变。
  • 我试图设置 backgroundColorImage到黑色。结果可以在图像中看到。

  • 问题是,有没有办法做到这一点 x ,内 symbol ,以编程方式黑色?

    最佳答案

    您可以屏蔽背景并应用自定义样式:

    struct MyButtonStyle: ButtonStyle {
    public func makeBody(configuration: MyButtonStyle.Configuration) -> some View {
    configuration.label
    .compositingGroup()
    .opacity(configuration.isPressed ? 0.5 : 1.0)
    }
    }

    Button(action: {}) {
    Image(systemName: "delete.left.fill")
    .foregroundColor(.green)
    .background(
    Color.black.mask(Circle())
    )
    }.buttonStyle(MyButtonStyle())

    圆圈可能不适合任何用法,但对于此图像,它可以正常工作:

    enter image description here

    关于SwiftUI 更改 SF Symbol 内部透明部分的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60013019/

    31 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com