Анимации не связаны друг с другом, как это. По сути, они делают обе анимации одновременно. Вам нужно создать новый метод для второго броска, который будет вызываться после завершения первого:
- (void)animationDidStop:(NSString *)animationID finished:(NSNumber *)finished context:(void *)contextn {
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:myView cache:YES];
[image2 removeFromSuperview];
[myView addSubview:image3];
[UIView commitAnimations];
}
Затем в существующем методе поместите эту строку:
[UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];
вроде так:
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:myView cache:YES];
[UIView setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];
[image1 removeFromSuperview];
[myView addSubview:image2];
[UIView commitAnimations];
Для получения дополнительной информации, проверьте Apple Docs