我以这种方式旋转图像:
self.image.transform = CGAffineTransformRotate(self.image.transform,
CGFloat(M_PI))
但是这段代码对按钮不起作用:
let rotateAnimation = CABasicAnimation(keyPath: "transform.rotation")
rotateAnimation.fromValue = 0.0
rotateAnimation.toValue = CGFloat(M_PI)
但我不知道如何将旋转指定给按钮。我该怎么办?
答案 0 :(得分:4)
您已创建CABasicAnimation
。您现在应该将其添加到CALayer
。
尝试使用此代码:
button.layer.addAnimation(rotateAnimation, forKey: "myAnimationKey");
以这种方式设置持续时间:
let duration = 1.0
rotateAnimation.duration = duration
UIButton
有一个图层属性。
答案 1 :(得分:1)
只需将动画添加到按钮图层即可。
//If you want a duration
rotateAnimation.duration = yourDuration
//You can set a key, but must not.
button.layer.addAnimation(rotateAnimation, forKey: nil)