2009-06-09 13 views
3

私は、UIViewの移動/サイズ変更によって基本アニメーションを実装する方法を知っています。しかし、以下の2つのアニメーションはちょっと複雑に思えます。iPhone SDKでアニメーションを実装する最善の方法は?

1)ペダルボタンを押すとスピードメーターが回転する車のゲームを想像してみてください。どのようにしてバーが円形に塗りつぶされているかのようなアニメーションを行うには?

2) 2番目のアニメーションは説明が簡単です。数字が滑っていく場所の数字のアニメーションを行う方法と、新しい番号がスロットマシンのように上から表示される方法。

答えて

6

あなたの最初の質問では、私はCGAffineTransformが行く方法だと思います。これを使用すると、私はこのようなものがうまくいくと思います:

// BarView is a derived class from UIView that knows how to draw a "bar" 
BarView view[NumBars]; 
for(int i = 0; i < NumBars; i++) 
{ 
    // First place the view at the center of the instrument 
    [view[i] setCenter:CGPointMake(InstrumentX, InstrumentY)]; 

    // Now translate the view InstrumentWidth units on the positive X-Axis 
    CGAffineTransform translate = CGAffineTransformMakeTranslation(InstrumentWidth, 0); 

    // Rotate the view about the origin by an angle related to which "bar" this is 
    CGAffineTransform rotate = CGAffineTransformMakeRotation(i*AngleBetweenBars); 

    // create a transform matrix from the translation and rotation matrices and apply it to the view 
    [view[i] setTransform:CGAffineTransformConcat(translate, rotate)]; 
} 
+0

私はCGAffineTransformの専門家ではありませんが、このコードは循環的にバーを描画していませんか?それは実際にアニメーションのサークルの周りのバーを明るくしますか? – erotsppa

+0

はい、このコードでは、計測器の周囲に丸を描くだけです。 –

関連する問題