2017-02-28 6 views
0

アイテムが選択されたときの表示方法です。行が選択されているときにUIImageViewの画像を変更しますか?

enter image description here

通常の行が黒い背景を有しており、アイコンは白の前景を有しています。しかし、行を選択すると、背景が半白色になります。 imageViewの行が選択されているときに、逆の色に画像を変更する方法、またはimageViewで別の画像を使用する方法ですか?

答えて

0

は、あなたがUITableViewCellsetSelected(_ selected: Bool, animated: Bool)をオーバーライドして、はい、UIImageViewの色が強調された画像を使用して、設定することができます全体contentViewtintColorまたはちょうどimageView

0

あなたは、あなたがどんなUIColorためtintColorを変更することができますマスク(.alwaysTemplate)として、あなたのイメージを宣言する必要があり、この質問にChanging UIImage color

に答えるすでにあります。 NSDmitryの例@使用

0

を設定する必要があります。画像には2種類のプロパティがあります。ノーマル画像とハイライト画像。
このオプションは、インターフェイスファイル(storyboard/XIB)の属性インスペクタで使用できます。
イメージアセットのテンプレートタイプにtintColorを設定できるベクターイメージでは、別のオプションも使用できます。

Swift 3 また、両方のプロパティをプログラムで設定することもできます。

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

テーブルビューの行選択状態では、イメージの状態をノーマルからハイライト、またはその逆に変更します。 imageView.isHighlighted =真/偽

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

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


enter image description here

関連する問題