Puedes 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];
}
Pero esto también se llamará cuando una celda que ya está en la tabla se mueva de fuera de la pantalla a la pantalla, por lo que puede que no sea exactamente lo que está buscando. Acabo de revisar todos los métodos UITableView
y UIScrollView
delegate y no parece haber nada que manejar justo después de que se inserta la animación de una celda.
¿Por qué no simplemente llamar al método que desea que se llame cuando la animación finalice después 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:
.