2011-10-18 19 views

答えて

7

回転が所定の角度で回転を変換するが、私はあなたが360度(またはそれ以上)の回転を達成しようとしていると思います。あなたはそれを達成するためにCAAnimationを使用する必要があります。この...例行うには:

CABasicAnimation* spinAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation"]; 
spinAnimation.duration = 5.0; 
spinAnimation.timingFunction = [CAMediaTimingFunction functionWithName: kCAMediaTimingFunctionLinear]; 
spinAnimation.toValue = [NSNumber numberWithFloat: 2.0 * M_PI * 20.0]; 
[myView.layer addAnimation:spinAnimation forKey:@"spinAnimation"]; 

を上記のコードはMYVIEWあなたが現在の変換と回転保持する必要が5秒で20回

+0

これは彼が求めているものではありません。 –

-1

回転しますAGAIN ...あなたが必要なので...

[myView setTransform:CGAffineTransformRotate(myView.transform, 1.0)]; 

これは、最初は、これは何回転、スケールまたは翻訳されていないCGAffineTransformIdentity、なり、任意の変換既存に回転を適用します。

+0

CGAffineTransformRotateを複数回適用すると、-2pi TJez

0

ここで重要なのは、CGAffineTransformRotateのパラメータがラジアンで '回転数'ではないことです。ありがたいことに、「回転数」から(2.0 * M_PI)を乗算してラジアンに変換するのは簡単です。

+0

はい、私はこれを理解しています。しかし、それでも問題は解決しません。 –

+0

ああ... CGAffineTransformRotateが-2pi ipmcc

+0

ええ、@AshleyMillsのアプローチは、すぐに使えます。 SimonLeeはそれがあなたが求めていたものではないことを正しく表していますか? – ipmcc

関連する問題