如何在使用 CABasicAnimation 时重复相同的动画
How to repeat same animation while working with CABasicAnimation
我正在创建自己的自定义 activity 指标。我用 CAShapeLayer 创建了一个圆形视图,我设法抚摸了圆形层,但我想无限期地这样做,直到用户想要停止。下面是我的描边图层动画代码。
private func getStrokeEndAnimation()->CABasicAnimation{
let animation = CABasicAnimation(keyPath: "strokeEnd")
animation.fromValue = 0.0
animation.toValue = 1.0
animation.duration = 2.0
animation.fillMode = .forwards
animation.isRemovedOnCompletion = false
return animation
}
BasicAnimation 上有一个名为 repeatCount
的实例 属性,但如果我指定我的 activity 指示器将按给定次数设置动画,就像我这样做一样
animation.repeatCount = 3
它只会动画3次。我怎样才能确保动画无限期地继续下去,直到我停止它。
animation.repeatCount = .greatestFiniteMagnitude
将出于所有实际目的永远重复它。
您可以根据Apple docs
在重复计数中使用无穷大
Infinity compares greater than all finite numbers and equal to other
infinite values.
animation.repeatCount = .infinity
我正在创建自己的自定义 activity 指标。我用 CAShapeLayer 创建了一个圆形视图,我设法抚摸了圆形层,但我想无限期地这样做,直到用户想要停止。下面是我的描边图层动画代码。
private func getStrokeEndAnimation()->CABasicAnimation{
let animation = CABasicAnimation(keyPath: "strokeEnd")
animation.fromValue = 0.0
animation.toValue = 1.0
animation.duration = 2.0
animation.fillMode = .forwards
animation.isRemovedOnCompletion = false
return animation
}
BasicAnimation 上有一个名为 repeatCount
的实例 属性,但如果我指定我的 activity 指示器将按给定次数设置动画,就像我这样做一样
animation.repeatCount = 3
它只会动画3次。我怎样才能确保动画无限期地继续下去,直到我停止它。
animation.repeatCount = .greatestFiniteMagnitude
将出于所有实际目的永远重复它。
您可以根据Apple docs
在重复计数中使用无穷大Infinity compares greater than all finite numbers and equal to other infinite values.
animation.repeatCount = .infinity