Iphone 循环和中断动画

Iphone 循环和中断动画,iphone,objective-c,ios,animation,Iphone,Objective C,Ios,Animation,我希望有人能告诉我循环一个动画,用另一个动画中断动画,然后恢复原始动画的正确方法。我当前设置动画的方式如下所示: -(void) firstAnimation { [UIView animateWithDuration:1.0f delay:0 options:(UIViewAnimationOptionCurveEaseInOut | UIViewAnimationOptionRepeat | UIViewAnimationOptionAutoreverse | UIViewAnimation

我希望有人能告诉我循环一个动画,用另一个动画中断动画,然后恢复原始动画的正确方法。我当前设置动画的方式如下所示:

-(void) firstAnimation
{
[UIView animateWithDuration:1.0f delay:0 options:(UIViewAnimationOptionCurveEaseInOut | UIViewAnimationOptionRepeat | UIViewAnimationOptionAutoreverse | UIViewAnimationOptionAllowUserInteraction) animations:^{
        CGPoint bottomPoint = CGPointMake(215.0, 380.0);
        imgBee.center = bottomPoint;
    } completion:^(BOOL finished) {

    }];
}
和中断:

-(void) interruptAnimation
{

    CGPoint point1 = CGPointMake(500, 500);
    CGPoint originalCenter = CGPointMake(215.0, 410.0);
    [UIView animateWithDuration:2.0f delay:0 options:(UIViewAnimationOptionCurveEaseInOut | UIViewAnimationOptionAutoreverse) animations:^{
        imgBee.center = point1;
    } completion:^(BOOL finished) {
        imgBee.center = originalCenter;
        [self firstAnimation];

    }];   
}
我很确定这不是最好的办法。当我使用interruptAnimation中断时,原始动画会突然启动,当我调用[self firstAnimation]时,动画也会突然重新启动


非常感谢您的帮助。

请看一下关于暂停和恢复动画的问答,这可能会有所帮助:

您是否也尝试过传递UIViewAnimationOptionBeginFromCurrentState?这似乎对过渡的突然性有所帮助,谢谢。不过,为了获得我想要的效果,我不得不对代码做了一些修改,删除了自动翻转,而不是添加了另一个动画。