如何更改嵌入在 UIAction 中的基于 SF Symbols 的 UIButton 的颜色?
How do I change the color of an SF Symbols based UIButton embedded in a UIAction?
我正在使用以下代码生成按钮,但无法成功更改按钮的前景色。
let button = UIButton(
type: .close,
primaryAction: UIAction(
image: UIImage(systemName: "x.circle"),
handler: { _ in }
)
)
我试过了
UIImage(systemName: "x.circle")?.withTintColor(.red)
UIImage(systemName: "x.circle")?.withTintColor(.systemRed, renderingMode: .alwaysOriginal)
button.setTitleColor(.systemRed, for: .normal)
添加配置:
var config = UIButton.Configuration.borderless()
config.baseForegroundColor = .systemRed
button.configuration = config
使用不同的符号变体,例如:UIImage(systemName: "x.circle.fill")
在这个特定场景中,我只想更改图像的圆形背景区域的颜色,而不是 X(十字)或按钮的背景。基本上我想要一个带有灰色 X(十字)的红色实心圆。
所以我可以得到这个:
但我想要更像这样的东西(红色仅限于圆圈内):
将类型从 .close
更改为 .custom
将UIImage(systemName: "x.circle")
改为
UIImage(systemName: "x.circle")?.withTintColor(.systemRed, renderingMode: .alwaysOriginal)
我正在使用以下代码生成按钮,但无法成功更改按钮的前景色。
let button = UIButton(
type: .close,
primaryAction: UIAction(
image: UIImage(systemName: "x.circle"),
handler: { _ in }
)
)
我试过了
UIImage(systemName: "x.circle")?.withTintColor(.red)
UIImage(systemName: "x.circle")?.withTintColor(.systemRed, renderingMode: .alwaysOriginal)
button.setTitleColor(.systemRed, for: .normal)
添加配置:
var config = UIButton.Configuration.borderless() config.baseForegroundColor = .systemRed button.configuration = config
使用不同的符号变体,例如:
UIImage(systemName: "x.circle.fill")
在这个特定场景中,我只想更改图像的圆形背景区域的颜色,而不是 X(十字)或按钮的背景。基本上我想要一个带有灰色 X(十字)的红色实心圆。
所以我可以得到这个:
但我想要更像这样的东西(红色仅限于圆圈内):
将类型从
.close
更改为.custom
将
UIImage(systemName: "x.circle")
改为UIImage(systemName: "x.circle")?.withTintColor(.systemRed, renderingMode: .alwaysOriginal)