1

我正在将 UIButton 的图像设置为系统图标

在此处输入图像描述

有没有办法像这样设置按钮内部的颜色?

在此处输入图像描述

4

1 回答 1

1

不幸的是,没有内置的方法可以做到这一点,因为person.circle.fill符号不支持多色:

SF Symbols 应用程序,检查 person.circle.fill,但唯一的选项是 Monochrome

您可以创建一个自定义符号并在那里添加颜色,但这需要做很多工作......您需要修改每个变体。

自定义符号模板,显示 person.circle.fill 的所有可能变体

相反,我会

  1. Command+C复制符号,在 SF Symbols 应用程序中
  2. 将其粘贴到 Sketch 等矢量设计应用程序中
  3. 在那里修改字体大小
  4. 右键->Convert to outlines
  5. 添加你的颜色
  6. 导出为 SVG,并将其拖入 Xcode
  7. 在图像的属性检查器中将“外观”设置为Single Scale
步骤 1-6 第 7 步
在 Sketch 中设置字体大小 将外观设置为单一比例

用法:

struct ContentView: View {
    var body: some View {
        Image("person.circle.fill")
            .resizable()
            .frame(width: 50, height: 50)
    }
}

结果:

黑色圆圈图像上的红人,在设备上运行

于 2021-04-25T15:52:59.473 回答