2011-02-17 90 views
0

我已经阅读了Apple的Core Animation Cook Book和Core Animation Programming Guide,但是我不太清楚一些细节。我可以在CALayer中创建一个NSBezierPath动画吗?

我是否总是需要动画一个完整的CALayer,还是可以在CALayer中设置动画?

如果我已经在一个图层中绘制了一个NSBezierPath,并且我想将其移动到另一个位置,那么我该怎么做?有没有这样的例子,你可以指向我?

回答

5

通常,您将CALayer作为一个整体进行动画制作以获得最佳性能。如果您所要做的只是改变Bezier路径的位置,则可以简单地为CALayer的positionframe属性制作动画。

如果要更改矢量路径的形状,建议您查看新的CAShapeLayer,您可以在该图层上使用path属性在一个CGPath与另一个CGPath之间进行动画制作。乔Ricioppo有一些示例代码,你可以看看这个here

除此之外,您将需要重新绘制层,如果你想更新其内容,而不是像位置,缩放,旋转等

+0

所以,如果我想有多种形状和动画的基本属性那些独立(或分组),形状应该各自独立的CALayer,然后我会动画每个CALayer? – Neigaard 2011-02-18 11:28:28

相关问题