2015-04-17 60 views
0

我有一個動畫,它基本上增加和減少了一個按鈕的比例尺,以引起用戶注意到它可以點擊的事實。添加減速和加速來縮放動畫

它工作正常,但它不是很流暢。一旦它達到全尺寸,它會立即切換到縮小尺寸。我想知道如何給它增加一個減速期和一個加速期,以便每次它改變方向時,它先減速然後加速?

這是我的代碼:

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

您需要添加一個計時功能。爲了簡單起見,你應該使用預定義的一個。

animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut); 

該計時功能將加速到開始和減速到結束。

+0

我發現不久後提出這個問題(我忘了留下一個答案),但無論如何感謝! – user3746428