【问题标题】:Swift synchronize CABasicAnimation with label.textSwift 将 CABasicAnimation 与 label.text 同步
【发布时间】:2015-04-29 01:11:06
【问题描述】:

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

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-60 分钟”可视化。动画圆圈的中心是一个标签,它也应该是动画的(计数,持续时间 2 秒)。有没有办法将“更改事件”添加到 CABasicAnimation 或 CAShapeLayer 以使标签与形状本身同步。有什么想法吗?

【问题讨论】:

    标签: swift animation uiview cabasicanimation cashapelayer


    【解决方案1】:

    您不需要同步它们。如果您在启动圆形动画的同时启动标签的 2 秒动画,它们将同时发生。在这个演示中,我运行了一个重复计时器来计算标签:

    【讨论】:

    • 谢谢。在您的动画中,标签正在消失。更好的是,当标签在 2 秒内从 0 到 30 计数时。
    • @AppGeer 好的,没问题。但你没有抓住重点。你问如何同步它们。我解释说你不需要。只需在相同的时间同时做两件事。这就是我的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多