平滑变换

时间:2013-05-29 14:34:08

标签: ios cgaffinetransform

我正在使用CGAffineTransform方法修改UIImageViews的帧,然后在父视图上调用setNeedsDisplay。这种方法正常,只有变换非常严格。

如何平滑动画?我已经研究了二次插值,但我不知道该如何处理它。当我缩放这些或旋转它们并计算在UIImageView上设置的下一个值时,但如果我不知道这些点,我不知道在哪里应用插值。

我有一个currentRotation值和一个currentScale值,当它们被送到方法时我可以得到下一个值,但我不确定如何从一个到另一个逐步动画。

1 个答案:

答案 0 :(得分:0)

您是否尝试将其封装在+animateWithDuration:delay:options:animations:completion:中?我的一个应用程序中有类似的内容,并且运行顺畅:

[UIView animateWithDuration:2.0f
                      delay:0.0f
                    options:UIViewAnimationOptionCurveEaseInOut
                 animations:^ {
                     _chevronImageView.transform = CGAffineTransformMakeRotation((int)(arc4random() % 100));
                 }
                 completion:nil];

编辑:我用-drawRect:方法调用它。