簡體   English   中英

選中行時更改UIImageView中的圖像嗎?

[英]Change image in UIImageView when row is selected?

這是選擇項目時的外觀。

在此處輸入圖片說明

通常,行的背景為黑色,圖標的前景為白色。 但是選擇一行將使背景變為半白色。 當選擇imageView的行時,是否可以將圖像更改為相反的顏色,或在imageView使用其他圖像?

該問題已經有答案更改UIImage顏色

您應該將圖像聲明為mask( .alwaysTemplate ),然后可以為任何UIColor更改tintColor

使用@ NSDmitry的例子,你需要重寫setSelected(_ selected: Bool, animated: Bool)UITableViewCell並設置tintColor整個的contentView或只是imageView

是的,可以使用突出顯示的圖像設置UIImageView顏色。 它具有兩種圖像屬性。 正常和突出顯示的圖像。
該選項在界面文件(storyboard / XIB)的屬性檢查器中可用。
矢量圖像還有另一個選項,您可以在其中為圖像資產的模板類型設置tintColor。

Swift您還可以通過編程設置兩個屬性。

let imageView = UIImageView(<set your initialiser>)
imageView.image = //Your normal image
imageView.highlightedImage = //You highligted image

在您的表格視圖行選擇狀態下,將圖像的狀態從正常更改為突出顯示,反之亦然。 imageView.isHighlighted = true / false

 func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    imageView.isHighlighted = true
}

func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) {
    imageView.isHighlighted = false
}


在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM