我有一个动画,它基本上增加和减少按钮的比例,以引起用户注意它是可以点击的。
它工作正常,但不是很顺利。一旦达到它的全尺寸,它就会立即切换到减小尺寸。我想知道如何为它添加一个减速期和一个加速期,这样每次改变方向时,它会先减速然后再加速?
这是我的代码:
func bloat() {
var animation = CABasicAnimation(keyPath: "transform.scale")
animation.toValue = NSNumber(float: 0.9)
animation.duration = 1
animation.repeatCount = 100
animation.autoreverses = true
faceButton.layer.addAnimation(animation, forKey: nil)
}
答案 0 :(得分:1)
您需要添加计时功能。为了简单起见,您应该使用其中一个预定义的。
animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut);
此计时功能将加速到开始和减速到结束。