2011-06-01 107 views
0

我試圖點擊時更改自定義單元格的背景顏色。這裏是我的代碼:自定義更改的backgroundColor的UITableViewCell不會顯示

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 

    UITableViewCell *cell = [tableView cellForRowAtIndexPath: indexPath]; 
    if (...condition...) { 
     cell.backgroundColor = [UIColor clearColor]; 
    } else { 
     cell.backgroundColor = [UIColor yellowColor]; 
    } 
} 

現在,我做了調試和細胞.backgroundColor = [UIColor clearColor];被執行,但細胞保持黃色!這隻發生在一些細胞(那些是黃色的,重複使用)。

有什麼建議嗎?

回答

0

您可以堅持更改的唯一方法是將其保存在某處,並在tableView:cellForRowAtIndexPath:方法中設置單元格時使用它。因此,維護一組具有黃色背景並設置單元格的單元格,檢查它是否在集合中。如果是,則將其指定爲黃色背景,如果不是,則將其設置爲清除顏色。

0

更改自定義單元類中的單元格背景顏色,其中我們有一個方法setbackground :.

3

我得到它的工作。只好用 aCell.contentView.backgroundColor 而不是 aCell.backgroundColor

這奏效了我。

相關問題