Core Animationでは、アプリケーションで使用できる数々のアニメーションクラスが用意されています。
CAAnimationは、アニメーションのあらゆるサブクラスの抽象クラスです。CAAnimationは、アニメーションの単純な再生時間、速度、繰り返し回数を指定するCAMediaTimingプロトコルを採用しています。CAAnimationはまた、CAActionプロトコルも採用しています。このプロトコルは、レイヤによってトリガされたアクションに応答して、アニメーションを開始する標準手段を提供します。
CAAnimationクラスは、CAMediaTimingFunctionのインスタンスとしてアニメーションのタイミングも定義します。タイミング関数は、アニメーションのペーシングを単純なベジエ曲線として記述します。線形のタイミング関数は、アニメーションのペースがその再生時間全体に渡り均一になるように指定し、イーズインのタイミング関数は、アニメーションが再生時間の終わりに近づくにつれて速度を落とすように指定します。
CAPropertyAnimationは、キーパスによって指定されたレイヤプロパティのアニメーション化を可能にするCAAnimationの抽象サブクラスです。
CABasicAnimationは、レイヤの単純補間を提供するCAPropertyAnimationのサブクラスです。
CAKeyframeAnimation(CAPropertyAnimationのサブクラス)は、キーフレームアニメーションをサポートします。アニメーション化するレイヤプロパティのキーパスと、アニメーションの各ステージの値を表す値の配列、およびキーフレームの時間とタイミング関数の配列を指定します。アニメーションが実行するたびに、指定された補間を使って各値が設定されます。
CATransitionは、レイヤのコンテンツ全体に作用するトランジションエフェクトを提供します。これは、アニメーション化の際にレイヤコンテンツのフェード、プッシュ、リビールを行います。独自のカスタムCore Imageフィルタを指定することによって、手持ちのトランジションエフェクトを拡張できます。
CAAnimationGroupを使うと、アニメーションオブジェクトの配列をグループ化して、同時に実行できます。
図 1に、アニメーションクラスの階層を示し、継承を通じて使用できるプロパティの概要も示します。
Last updated: 2007-10-31