我想让我的MKCircle在添加到地图时从0扩展到指定的半径大小。 MKOverlayRenderer给我带来了不错的最终结果,但它自发地添加了圆圈。我想为它设置一个更平滑的入口动画,但我不知道如何在没有动画层的情况下做到这一点。
我尝试使用CABasicAnimation添加扩展的UIView,并在完成时将其替换为覆盖,但代码很难看,并且在添加叠加层时会出现明显的闪烁。
我看过另外两个声称有动画叠加层的项目,但它们都不是我正在寻找的银弹。
还有另一种方法我正在考虑我不太确定(因为我从未尝试过单独使用Core Graphics制作动画效果),这是子类化MKOverlayRenderer
,设置自定义绘图( MKCircle?)在- (void)drawMapRect:
到宽度和高度x = 0,并使用NSTimer
递增x并调用setNeedsDisplayInMapRect
直到圆圈达到其完整大小。这对我来说听起来像是一个长镜头,并且可能有一种更简单的方法来做到这一点。
我需要有人指出我正确的方向。