iOS - 无影响的图像动画移动

时间:2014-03-04 03:29:51

标签: objective-c uiimageview

我想在没有效果的情况下为图像的运动设置动画。要正常制作动画,我可以使用:

[UIView animateWithDuration:2.5f animations:^{
    CGRect currentFrame=self.image.frame;
    currentFrame.origin.x-=10;

    [self.image setFrame:currentFrame];

}];

然而,我发现如果使用这种方法,图像会逐渐加速,快一点,然后逐渐停止。

有没有办法动画UIImageView的动作,让视图在整个时间保持相同的速度?

2 个答案:

答案 0 :(得分:1)

您的动画会加速并减慢速度,因为它使用“自然”UIViewAnimationOptionCurveEaseInOut曲线。使用UIViewAnimationOptionCurveLinear选项使用恒速运动:

[UIView animateWithDuration:2.5f
    delay:0
    options:UIViewAnimationOptionCurveLinear
    animations:^{
        CGRect currentFrame=self.image.frame;
        currentFrame.origin.x-=10;
        [self.image setFrame:currentFrame];
    } 
    completion:^(BOOL finished){
    }
];

答案 1 :(得分:0)

[UIView animateWithDuration:1.0 delay:0.0 options:0 animations:^{

} completion:^(BOOL finished) {

}];