анимации по бесконечному циклу - PullRequest
1 голос
/ 11 октября 2010

У меня есть 5 различных анимаций, которые анимируются, а затем исчезают одна за другой.Есть ли способ поместить их в бесконечный цикл, чтобы анимация # 1 начиналась и заканчивалась, затем аним № 2 начинался и заканчивался и т.д.?тогда весь процесс повторяется по бесконечному циклу.

У меня есть анимации в отдельных блоках по задержкам.Я предполагаю, что есть лучший способ сделать это.это то, что у меня есть в данный момент:

-(void) firstAnimation {

        [UIView beginAnimations:@"Fade Out Image" context:nil];
        [UIView setAnimationDelegate:self];
        [UIView setAnimationDelay:40];
        [UIView setAnimationRepeatCount:30];
        [UIView setAnimationRepeatAutoreverses:YES]; 
        [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
        theImage.alpha = 1;
        theImage.alpha = 0.1;

        [UIView commitAnimations];

        [self secondAnimation];

}

-(void) secondAnimation {

        tapImage2.hidden = NO;

        [UIView beginAnimations:@"Fade Out Image" context:nil];
        [UIView setAnimationDelegate:self];
        [UIView setAnimationDelay:53];
        [UIView setAnimationRepeatCount:29];
        [UIView setAnimationRepeatAutoreverses:YES];
        [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
        theImage2.alpha = 1;
        theImage2.alpha = 0.1;      

        [UIView commitAnimations];

    [self thirdAnimation];

}

, это продолжается 5 анимаций.спасибо за любую помощь.

1 Ответ

8 голосов
/ 11 октября 2010

Вместо использования задержки установите делегат анимации и создайте метод анимации. Я заметил, что вы уже устанавливаете делегата.

[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(animationFinished:finished:context:)];

- (void)animationFinished:(NSString *)animationID finished:(BOOL)finished context:(void *)context {
    //Start next animation based on the animationID of the last one...
}
...