添加减速和加速以缩放动画

时间:2015-04-17 14:00:08

标签: ios swift uibutton uianimation caanimation

我有一个动画,它基本上增加和减少按钮的比例,以引起用户注意它是可以点击的。

它工作正常,但不是很顺利。一旦达到它的全尺寸,它就会立即切换到减小尺寸。我想知道如何为它添加一个减速期和一个加速期,这样每次改变方向时,它会先减速然后再加速?

这是我的代码:

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)
}

1 个答案:

答案 0 :(得分:1)

您需要添加计时功能。为了简单起见,您应该使用其中一个预定义的。

animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut);

此计时功能将加速到开始和减速到结束。