2017-03-01 88 views
0

我有一個UITableViewCell裏面的圖像,我使用「isHighlighted」字段來設置圖像應該是灰色還是有色。每當我選擇單元格時,UITableViewCell集合在所有子視圖中都被高亮爲true,有什麼方法可以禁用此行爲?禁用子視圖從UITableViewCell高亮

回答

0

像你重載的聲音被高亮做一些自定義的邏輯,比如如何在未選中時顯示單元格。

如果是這樣,那麼繼承UITableViewCell並將您的自定義屬性添加到子類會更好,而不是使用「isHighlighted」並在表中使用派生類。

0

創建一個self.selectionStyle = UITableViewCellSelectionStyleNone;的子類,然後覆蓋setHighlighted:animated::。

- (void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated{ 
    [super setHighlighted:highlighted animated:animated]; 
    // Set your imageView background color here 
} 

注意UIImageView不從UIControl繼承,所以它沒有highlighted財產。但是,UITableViewCell確實會在突出顯示時將子視圖的背景顏色設置爲透明。您可能無法通過setHighlighted...控制內置imageView的背景顏色行爲,在這種情況下,您希望添加自己完全控制的UIImageView

相關問題