Swift- анимированный цвет обводки CAshapeLayer

Я пытаюсь найти способ оживить цвет мазка, который я создаю

circleLayer = CAShapeLayer()
circleLayer.path = circlePath.CGPath
circleLayer.lineCap =  kCALineCapRound
circleLayer.fillColor = UIColor.clearColor().CGColor
CABasicAnimation fill = CABasicAnimation.
circleLayer.strokeColor = UIColor(red: 0.4, green: 1.0, blue: 0.2, alpha: 0.5).CGColor
circleLayer.lineWidth = 20.0;
circleLayer.lineJoin = kCALineJoinRound
// Don't draw the circle initially
circleLayer.strokeEnd = 0.0

// Add the circleLayer to the view's layer's sublayers
layer.addSublayer(circleLayer) 

Чего я хочу добиться, так это: пока он создается (я создаю его в течение 1 секунды), цвет оживит сам себя.

1 ответ

Решение

Обнаружил решение. Наслаждаться. После создания CAShapeLayer, конечно:

        let animcolor = CABasicAnimation(keyPath: "strokeColor")
        animcolor.fromValue         = UIColor.greenColor().CGColor
        animcolor.toValue           = UIColor.orangeColor().CGColor
        animcolor.duration          = 1.0;
        animcolor.repeatCount       = 0;
        animcolor.autoreverses      = true
        circleLayer.addAnimation(animcolor, forKey: "strokeColor")
Другие вопросы по тегам