swift 如何修改image的颜色

2024-05-10  本文已影响0人  可乐小子

方法一:也可以修改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
  
}

}

上一篇 下一篇

猜你喜欢

热点阅读