2012-11-23 21 views
2

添加行到表後,我使用scrollToRowAtIndexPath在屏幕的中間行位置,然後依靠scrollViewDidEndScrollingAnimation突出同一行。知道何時scrollToRowAtIndexPath不滾動

有時,行不能滾動;例如,當它是表格中的第一個時。在這些情況下,scrollViewDidEndScrollingAnimation未被調用,因此新添加的行未突出顯示。

有沒有辦法知道scrollToRowAtIndexPath會對錶產生什麼影響?

+0

然後加入呢? – Vjlakshmi

+0

你有沒有設法找到解決你的問題? – MartinMoizard

+0

沒有。祝你好運。 – ceej23

回答

0

在插入時你必須指定要插入的indexPaths嗎? 公開存儲這些indexPath,並在CellForRowAtIndexPath中用高顏色的顏色重新加載該行或分別重新加載行。

例如: 將插入行的索引路徑添加到公共數組中。

[tableView insertRowsAtIndexPaths:indexpathArray withRowAnimation:UITableViewRowAnimationFade]; 

self.colorIndexs = indexpathArray;  

你在一個時間只插入一個一行的cellForRowAtIndexPath

if ([colorIndexs count] > 0 && [colorIndexs containsObject:indexPath]) 

customCell.contentView.backgroundColor = [UIColor redColor]; 
+0

可能我的解釋並不清楚:突出顯示,我的意思是我使用animateWithDuration來設置高亮顯示:是,然後是setHighlighted:插入單元格的動畫完成時爲NO。所以,實際上,單元格的背景高亮顯示,在滾動到視圖中心後恢復正常。它看起來像你的解決方案將永久改變插入單元格的背景顏色。 – ceej23

+0

ok ..然後,而不是改變上面的代碼中的顏色,只需在上面的代碼中寫'setHighlighted:NO'和YES。這不會解決目的? – Vjlakshmi

+0

否:您的解決方案將執行setHighlighted視圖加載,當表視圖不需要滾動以使單元格進入視圖時,這很好。當它需要滾動時,setHighlighted動畫可能會在單元格離屏時發生。因此,scrollViewDidEndScrollingAnimation適用於後一種情況,並且您的解決方案在不需要滾動時可以使用;我只需要一個可以處理兩者的解決方案。感謝您的嘗試。 – ceej23

相關問題