swift 如何修改image的颜色

方法一:也可以修改button的按钮颜色
let titleImg = R.image.icon_appname()?.withRenderingMode(.alwaysTemplate)
titleImage.image = titleImg
titleImage.tintColor = AppConfig.shared.urlList.serviceUrl.contains("beta1-") ? .mainRed : .white

方法二:
extension UIImage {

func imageWithTintColor(_ color: UIColor, blendMode: CGBlendMode = .normal) -> UIImage? {
    
    guard self.size.height > 0 && self.size.width > 0 else {
        return nil
    }
    
    let rect = CGRect(origin: .zero, size: self.size)
    UIGraphicsBeginImageContextWithOptions(self.size, false, self.scale)
    
    guard let context = UIGraphicsGetCurrentContext() else { return nil }
    
    context.translateBy(x: 0, y: self.size.height)
    context.scaleBy(x: 1.0, y: -1.0)
    context.setBlendMode(blendMode)
    context.clip(to: rect, mask: self.cgImage!)
    color.setFill()
    context.fill(rect)
    
    let coloredImage = UIGraphicsGetImageFromCurrentImageContext()
    UIGraphicsEndImageContext()
    
    return coloredImage
  
}

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容