我正在使用CGAffineTransform
方法修改UIImageViews的帧,然后在父视图上调用setNeedsDisplay。这种方法正常,只有变换非常严格。
如何平滑动画?我已经研究了二次插值,但我不知道该如何处理它。当我缩放这些或旋转它们并计算在UIImageView上设置的下一个值时,但如果我不知道这些点,我不知道在哪里应用插值。
我有一个currentRotation值和一个currentScale值,当它们被送到方法时我可以得到下一个值,但我不确定如何从一个到另一个逐步动画。
答案 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:
方法调用它。