Você pode usar tableView:willDisplayCell:forRowAtIndexPath:
como:
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
NSLog(@"tableView willDisplay Cell");
cell.backgroundColor = [UIColor colorWithWhite:((indexPath.row % 2) ? 0.25 : 0) alpha:0.70];
}
Mas isso também será chamado quando uma célula que já está na tabela se mover de fora da tela para a tela, de forma que pode não ser exatamente o que você está procurando. Acabei de examinar todos os métodos UITableView
e UIScrollView
delegate e não parece haver nada para tratar logo depois que uma célula é inserida na animação.
Por que não apenas chamar o método que você deseja que seja chamado quando a animação terminar depois de endUpdates
?
- (void)setDownloadedImage:(NSMutableDictionary *)d {
NSIndexPath *indexPath = (NSIndexPath *)[d objectForKey:@"IndexPath"];
[indexPathDelayed addObject:indexPath];
if (!([table isDragging] || [table isDecelerating])) {
[table beginUpdates];
[table insertRowsAtIndexPaths:indexPathDelayed withRowAnimation:UITableViewRowAnimationFade];
[table endUpdates];
// --> Call Method Here <--
loadingView.hidden = YES;
[indexPathDelayed removeAllObjects];
}
}
-scrollToRowAtIndexPath:atScrollPosition:animated:
também.