答案 0 :(得分:0)
已经回答了这个问题Changing UIImage color
您应该将图片声明为面具(.alwaysTemplate
),然后您可以为tintColor
更改UIColor
。
答案 1 :(得分:0)
使用@ NSDmitry的示例,您需要覆盖setSelected(_ selected: Bool, animated: Bool)
上的UITableViewCell
并设置整个tintColor
的{{1}}或contentView
答案 2 :(得分:0)
是的,可以使用突出显示的图像设置UIImageView颜色。它有两种类型的图像属性。正常和突出显示的图像。
此选项在接口文件(storyboard / XIB)中的属性检查器中可用。
另一个选项可用于矢量图像,您可以在其中为图像资源的模板类型设置tintColor。
<强>夫特强> 您也可以以编程方式设置这两个属性。
let imageView = UIImageView(<set your initialiser>)
imageView.image = //Your normal image
imageView.highlightedImage = //You highligted image
根据您的tableview行选择状态,将图像状态从正常更改为突出显示,反之亦然。 imageView.isHighlighted = true / false
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
imageView.isHighlighted = true
}
func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) {
imageView.isHighlighted = false
}