2010-08-25 65 views
2

我有一個至少有9行的表格視圖。細胞的背景顏色將取決於細胞的位置。如果低於3或低於6或低於9,則背景顏色會發生變化(請參閱下一張圖像)。如何更改表格視圖單元移動後的背景顏色?

alt text

的問題是,此表視圖可以被重新排序,並且我要保持相同的顏色圖案。例如:如果我將第4行更改爲第3個位置,則其背景顏色必須從黃色變爲紅色。

爲了獲得不同的顏色,我使用了方法- (void)tableView:(UITableView*)tableView willDisplayCell:(UITableViewCell*)cell forRowAtIndexPath:(NSIndexPath*)indexPath,但只有在顯示單元格時才調用此方法,並且不適合重新排序問題(單元格已顯示且顏色不變) 。

我已經嘗試創建一個方法來改變剛剛移動行後調用的背景顏色,但顏色沒有改變(看起來改變背景顏色的cell.backgroundColor屬性只適用於- (void)tableView:(UITableView*)tableView willDisplayCell:(UITableViewCell*)cell forRowAtIndexPath:(NSIndexPath*)indexPath)。 :(

任何想法,我該怎麼辦呢?

在此先感謝。

回答

1

調整您的數據源的位置,但是你在做什麼,然後告訴您的數據源,以重新計算顏色的每個項目然後重新加載你的表格視圖,它應該「正常工作」

+0

如果單元格正在以編程方式移動,通過更改CoreData模型和NSFetchedResultsController? – radven 2012-06-15 19:13:58

相關問題