私のiPhoneアプリでは、画面に画像が表示されます(UIImageView)。それを回転させて、一定の速度で速度を上げたいと思います。基本的に、ゆっくりと回転し始め、回転が非常に速くなり、画像が見えなくなるまで速度を上げるエフェクトを作成しようとしています(高速アニメーションのみ)。
アニメーションブロックを使用して変換の回転プロパティを変更することは考えていますが、速度を制御する方法がわかりません。
私のiPhoneアプリでは、画面に画像が表示されます(UIImageView)。それを回転させて、一定の速度で速度を上げたいと思います。基本的に、ゆっくりと回転し始め、回転が非常に速くなり、画像が見えなくなるまで速度を上げるエフェクトを作成しようとしています(高速アニメーションのみ)。
アニメーションブロックを使用して変換の回転プロパティを変更することは考えていますが、速度を制御する方法がわかりません。
アニメーション カーブを に設定したアニメーションを使用したいと思うでしょうUIViewAnimationCurveEaseIn
。期間を長い間隔 (おそらく 5 秒程度) に設定します。それはあなたが探している効果を達成するはずです。
サンプルコード:
CABasicAnimation *spin = [CABasicAnimation animationWithKeyPath:@"transform.rotation"];
spin.toValue = [NSNumber numberWithFloat:50*2*M_PI];
spin.duration = 5.f;
spin.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn];
[imageView.layer addAnimation:spin forKey:@"spinningAnimation"];
独自のアニメーション カーブを定義する場合は、CAMediaTimingFunction のfunctionWithControlPoints::::
メソッドを調べてください。