0

我目前有一个点击按钮的图像动画,但问题是图像在开始动画之前从它在情节提要上的位置跳转。我无法弄清楚它为什么这样做 - 我想做的只是将它从屏幕上的当前位置移到右侧。

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

原位置:

原来的

动画开始:

原来的

moveImage 触发器:

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

移动图像功能:

- (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];
}
4

1 回答 1

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

那应该会容易一些。

于 2013-07-18T16:09:03.653 回答