Undo insertRowsAtIndexPaths and add custom animation as you like with a delay.
- (void)insertRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation: (UITableViewRowAnimation)animation { for (NSIndexPath *indexPath in indexPaths) { UITableViewCell *cell = [self cellForRowAtIndexPath:indexPath]; [cell setFrame:CGRectMake(320, cell.frame.origin.y, cell.frame.size.width, cell.frame.size.height)]; [UIView beginAnimations:NULL context:nil]; [UIView setAnimationDuration:1]; [cell setFrame:CGRectMake(0, cell.frame.origin.y, cell.frame.size.width, cell.frame.size.height)]; [UIView commitAnimations]; } }
source share