我在初始化代码中的图像时遇到了一些问题。当它所在的单元格突出显示时,我试图更改其tintColor属性:
iconImageView.tintColor = isHighlighted ? UIColor.white : UIColor.black
要做到这一点,我用以下行初始化图像:
iconImageView.image = UIImage(named: imageName)?.renderingMode(.alwaysTemplate)
但是出现以下错误:
无法调用非功能类型'UIImage.RenderingMode'的值
有什么建议吗?
答案 0 :(得分:1)
“ renderingMode”是UIImage的只读属性。
创建并返回具有指定渲染模式的新图像对象。 您可以使用:
open func withRenderingMode(_ renderingMode: UIImage.RenderingMode) -> UIImage
代码段:
let imageView: UIImageView = UIImageView.init()
let image = UIImage.init(named: "name")?.withRenderingMode(.alwaysOriginal)
imageView.image = image
答案 1 :(得分:0)
renderingMode->指定图像的可能渲染模式。 withRenderingMode(_ :)->创建并返回具有指定渲染模式的新图像对象。
您需要使用withRenderingMode( :),因此将renderMode更改为withRenderingMode(:)
let image = UIImage(named: "imageName")?.withRenderingMode(.alwaysTemplate)
iconImageView.image.setImage(image, for: .normal)
iconImageView.image.tintColor = isHighlighted ? UIColor.white : UIColor.black