核心动画中关键路径的作用是什么?

时间:2012-03-15 09:56:07

标签: iphone objective-c core-animation

我正在熟悉Core Animation并尝试沿着曲线实现简单的移动。我找到了非常有用的代码here

那里有一条线:

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

为什么我们需要这个名为keyPath的属性?它的作用是什么?该代码仅在使用建议的NSString @“position”时才有效。那么它是一个内置的常量字符串吗?它看起来不是这样。希望你看到我的困惑。能否用简单的语言解释如何管理这个keyPath属性?

2 个答案:

答案 0 :(得分:3)

  • KeyPath说明要修改哪个动画属性 创建动画效果
  • 您可以使用任何animatable属性作为keypath
  • 您可以在头文件(比如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;
  • 不是常量字符串,它是属性名称

答案 1 :(得分:2)

CABasicAnimation和CAKeyframeAnimation继承自CAPropertyAnimation。两者都使用 animationWithKeyPath:方法。

KeyPath必须包含可动画的属性。在这里找到他们Link