我有一个UIBezierPath(圆圈)以增量方式构建:
[circlePath addArcWithCenter:clockCenter radius:radius startAngle:angleRadians endAngle:1.5*M_PI clockwise:YES];
...
[circlePath closePath];
[COLOR_CIRCLE setFill];
[circlePath fill];
偶尔,我想为填充设置动画,以便在完成填充时花费一秒钟,并在构建时遵循路径(顺时针)。完成此任务的首选方法是什么?现在我正在思考核心动画,但我希望有一个填充:withDelay或一些我没有偶然发现的东西。 TIA。
答案 0 :(得分:2)
你可以试试这个:
创建一个CAShapeLayer,其path
设置为您的形状。使用此CAShapeLayer作为绘制填充圆弧/圆的另一个图层的蒙版。然后将弧/圆弧角度设置为0º到360º。这可能接近你想要的效果。
我无法找到“内置”方式来根据需要设置填充动画。然而,有一种内置的方式来设置笔画动画:
使用带有CAShapeLayer支持的UIView。 CAShapeLayer拥有path
属性。然后,您可以将动画应用于图层的strokeStart
和/或strokeEnd
属性。