我有一个CALayer,它实现了drawInContext:方法,并画了一个简单的圆形,如下所示:
- (void)drawInContext:(CGContextRef)ctx
{
CGContextScaleCTM(ctx, DrawingScale, DrawingScale);
CGContextSetRGBFillColor (ctx, 1, 0, 0, 1);
CGContextFillEllipseInRect (ctx, LocationRectangle);
}
我一直在尝试使用不同的方法来根据触摸事件增加我的圆形大小。我尝试过使用UIView beginAnimation系统和CABasicAnimation,但它们都会使图像模糊。在阅读中,我发现这是因为对于这些选项,CALayer似乎被视为位图。
好吧...但我想缩放我的图形而不使其模糊,例如使用矢量缩放。
因此,在我的代码中,我有一个“DrawingScale”属性。
是否有一种简洁的方式可以使用层动画来缩放此属性?还是这是人们使用NSTimers(yuk)的事情?
这可能是我可以使用核心动画来动画自定义属性的一种情况吗?如果是这样,我很想知道人们认为哪个示例是最好的,或者苹果文档的哪个部分可能是开始研究这个主题的好地方。
似乎当涉及到Mac/iOS上的图形时,有许多绘制/皮毛猫的方法...?