Если вы передаете анимационный вид изображения другому контроллеру, похоже, что анимация продолжается быстро. Я не вижу никакой «заминки» в анимации. Продвижение вперед с помощью модальной презентации отлично работало. Я не мог вернуться к первому контроллеру, просто отклонив его, мне пришлось добавить представление изображения обратно в представление, чтобы сделать эту работу, и даже тогда она работает только в том случае, если я отключил автоматический макет (в противном случае я получаю сообщение об ошибке он не может установить ограничение). Итак, чтобы идти вперед и назад с модальными (без анимации), я имел это в первом контроллере:
- (void)viewDidLoad {
[super viewDidLoad];
self.isFirst = YES;
NSMutableArray *imgArray = [NSMutableArray array];
for (int i = 1; i< 41; i++) {
UIImage *img = [UIImage imageNamed:[NSString stringWithFormat:@"New_PICT%04d.jpg",i]];
if (img) {
[imgArray addObject:img];
}
}
self.iv.animationImages = imgArray;
self.iv.animationDuration = 10;
[self.iv startAnimating];
}
-(void)viewDidAppear:(BOOL)animated {
if (self.isFirst) {
self.isFirst = NO;
}else{
self.iv.frame = CGRectMake(48, 48, 48, 48);
[self.view addSubview:self.iv];
}
}
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
SecondViewController *sec = segue.destinationViewController;
sec.iv = self.iv;
}
благодарит за детали. Таким образом, похоже, что это может быть жизнеспособной техникой для определенных стилей перехода. Я все еще получаю зависание авто макета, поэтому не могу сказать, что может произойти с этой ошибкой. В качестве метода это было бы более гибким, если бы был больше контроля над анимацией UIImageView (бежать назад и т. Д.). –