【发布时间】:2016-02-10 19:12:22
【问题描述】:
我想每次都以相同的度数(90°)多次旋转 UIButton。我遇到的问题是它执行了一次 90° 旋转,然后当我下次按下按钮时,它再次从 0 开始并转到相同的先前值。我的代码;
let rotateView = CABasicAnimation()
rotateView.toValue = 90 * (M_PI) / 180
rotateView.duration = 0
rotateView.repeatCount = 0
rotateView.removedOnCompletion = false
rotateView.fillMode = kCAFillModeForwards
rotateView.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseOut)
smile2.layer.addAnimation(rotateView, forKey: "transform.rotation.z")
我认为问题可能是我无法指定 fromValue,因为我使用随机数开头 - 这是代码;
let value: NSArray = [90, 180, 270, 360]
let range: UInt32 = UInt32(value.count)
let randomNumber = Double(arc4random_uniform(range))
为了更加清楚:按钮的fromValue 是let value 中的一个随机数。我想让按钮在每次按下按钮时从该随机数连续旋转 90°。
【问题讨论】:
标签: xcode swift uibutton rotation cgaffinetransform