Swift将CABasicAnimation与label.text同步

时间:2015-04-29 01:11:06

标签: swift animation uiview cabasicanimation cashapelayer

我有一个循环进度条,它将通过以下方式进行动画处理:

func animateCircle(from: Double, to: Double ) {
    let animation = CABasicAnimation(keyPath: "strokeEnd")
    animation.duration = 2
    animation.fromValue = from
    animation.toValue = to/60
    animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear)
    self.progressCircle.strokeEnd = CGFloat(to/60)
    self.progressCircle.addAnimation(animation, forKey: "animateCircle")
}

笔画动画效果很好,并且可视化#0;分钟0-60"。在动画圆圈的中心是一个标签,它应该是动画的(计数,持续时间2秒)。有没有办法添加"更改事件"到CABasicAnimation或CAShapeLayer,以使标签与形状本身同步。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您不需要同步它们。如果您在开始圈动画的同时开始制作标签的2秒动画,它们将一起发生。在本演示中,我运行一个重复计时器来使标签计数:

enter image description here