图像在动画之前跳跃

时间:2013-07-18 15:58:02

标签: ios objective-c animation

我目前在单击按钮时有一个动画图像,但问题是图像在开始动画之前从故事板上的位置跳过。我无法弄清楚为什么会这样做 - 我想把它从屏幕上的当前位置移到右边。

我做错了什么,或者只是遗漏了什么?

原始位置:

original http://oi41.tinypic.com/2gwrpfa.jpg

动画的开头:

original http://oi39.tinypic.com/28lezwm.jpg

moveImage触发器:

[self moveImage:_cornerCloud duration:3.0
              curve:UIViewAnimationOptionCurveLinear x:200.0 y:0];

moveImage功能:

- (void)moveImage:(UIImageView *)image duration:(NSTimeInterval)duration
        curve:(int)curve x:(CGFloat)x y:(CGFloat)y
{

// Setup the animation
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:duration];
[UIView setAnimationCurve:curve];
[UIView setAnimationBeginsFromCurrentState:YES];

// The transform matrix
CGAffineTransform transform = CGAffineTransformMakeTranslation(x, y);
image.transform = transform;

// Commit the changes
[UIView commitAnimations];
}

1 个答案:

答案 0 :(得分:1)

[UIView animateWithDuration:3.0f
                      delay:0.0f
                    options:UIViewAnimationOptionCurveLinear
                 animations:^{
                  // just set the center to off-screen
}
                 completion:^(BOOL finished){}];

这应该会更容易一些。