Leo*_*bus 21
您可以使用UIGraphicsBeginImageContextWithOptions来开始图像上下文,设置所需的颜色并使用图像的方法在其上func draw(in rect: CGRect)使用渲染模式绘制图标图像.alwaysTemplate:
extension UIImage {
func tinted(with color: UIColor) -> UIImage? {
UIGraphicsImageRenderer(size: size, format: imageRendererFormat).image { _ in
color.set()
withRenderingMode(.alwaysTemplate).draw(at: .zero)
}
}
}
Run Code Online (Sandbox Code Playgroud)
游乐场测试
let camera = UIImage(data: try! Data(contentsOf: URL(string: "https://cdn4.iconfinder.com/data/icons/ionicons/512/icon-camera-128.png")!))!
let redCamera = camera.tinted(with: .red)
Run Code Online (Sandbox Code Playgroud)
如果您使用PNG图像(我认为是由于图标)-请使用:
let originalImage = UIImage(named: "iconName")
let tintedImage = originalImage?.withRenderingMode(.alwaysTemplate)
yourButton.setImage(tintedImage, forState: .normal)
yourButton.tintColor = UIColor.blue //change color of icon
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5310 次 |
| 最近记录: |