Попытка использовать UIView для анимации - PullRequest
1 голос
/ 19 мая 2011

Я пытаюсь сложить две анимации.Я использую один и тот же UIImage в своем коде для обоих изображений.Я начинаю с определения (первая строка) КАКОГО изображения для загрузки.

NSString *imageName = (self._handleToSectionModel.calculatorState == CALCULATOR_OPENED)? 
[NSString stringWithString:@"1_dg_please_see_warning_2lines.png"] : 
[NSString stringWithString:@"1_dg_warnings_landing_page.png"];

Я хочу постепенно исчезнуть из текущего изображения, загрузить новое изображение и FADE его. Очевидно, что когда я выполняю это, оно только действительно оживляетвторой.Как правильно разместить анимацию в одном и том же представлении, чтобы они оба работали полностью?

UIImage *image = [UIImage imageNamed:imageName];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0f];

self.warningImage.alpha = 0.0f;

[UIView commitAnimations];

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0f];

self.warningImage.alpha = 1.0f;
self.warningImage.image = image;

[UIView commitAnimations];

РЕДАКТИРОВАНИЕ / ОБНОВЛЕНИЕ: РЕШЕНО:

    [UIView animateWithDuration:1.0 animations:^{ self.warningImage.alpha = 0.0f; } completion:^(BOOL finished){
        [UIView animateWithDuration:1.0 animations:^{ self.warningImage.alpha = 1.0f; self.warningImage.image = image; } completion:^(BOOL finished){}];
    }];

Спасибо за ссылку в моем комментарии!

1 Ответ

1 голос
/ 20 мая 2011
[UIView animateWithDuration:1.0 animations:^{ self.warningImage.alpha = 0.0f; } completion:^(BOOL finished){
    [UIView animateWithDuration:1.0 animations:^{ self.warningImage.alpha = 1.0f; self.warningImage.image = image; } completion:^(BOOL finished){}];
}];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...