2012-03-15 8 views
4

私はCore Animationを取得し、カーブラインに沿って簡単な動きを実装しようとしています。私は、コードの本当に便利一片hereコアアニメーションのキーパスの役割は何ですか?

行がありますを見つけた:

CAKeyframeAnimation *pathAnimation = [CAKeyframeAnimation animationWithKeyPath:@"position"]; 

は、なぜ我々はキーパスという名前のこのプロパティが必要なのでしょうか?その役割は何ですか?このコードは、提案されているNSString @「位置」を使用し、それ以外は使用しない場合にのみ機能します。それは組み込み定数文字列ですか?それはそうではありません。あなたは私の混乱を見て欲しいです。このkeyPathプロパティをどのように管理すればよいですか?

答えて

3
  • キーパスがアニメート属性が に変更しようとしていると言うには、アニメーション効果
  • を作成するあなたは、ヘッダーファイルでそれらを見つけることができますキーパス
  • として、アニメーション化プロパティのいずれかを使用することができます(CALayerのを言う)、その上にあなたは、アニメーション適用
/* The position in the superlayer that the anchor point of the layer's 
    bounds rect is aligned to. Defaults to the zero point. **Animatable**. */ 
@property CGPoint position; 
  • 定数文字列、それは属性名です
2

CABasicAnimationとCAKeyframeAnimationをするCAPropertyAnimationから継承されるわけではありません。どちらもそのanimationWithKeyPath:メソッドを使用します。

KeyPathには、のアニメーション可能なプロパティが含まれている必要があります。ここをクリックしてくださいLink

関連する問題