永远旋转UIView 360°

时间:2016-10-04 21:45:38

标签: ios swift uiview swift3

我试图让这个UIView永远旋转:

let options = UIViewAnimationOptions.autoreverse.union(UIViewAnimationOptions.repeat)

UIView.animate(withDuration: 5, delay: 0, options: options, animations: {            
    self.transform = CGAffineTransform(rotationAngle: CGFloat(2 * M_PI))
}, completion: { _ in })

目前它没有任何作用,因为旋转角度与现在的位置相同。当我尝试类似M_PI之类的东西时,它会起作用,并且会像它应该的那样来回移动,但它只能在中途完成。

我想知道如何在一个完整的360度运动中永远地继续这种旋转。

我试过这个: UIView Infinite 360 degree rotation animation? 我有同样的问题,但我无法弄清楚如何让它工作,因为Obj-C - >斯威夫特有很多变化。宁可使用除CAAnimation之外的UIView.animate,但不确定这是否是唯一的其他方式。

1 个答案:

答案 0 :(得分:1)

使用CABasicAnimation,而不是查看动画,并且加性旋转,而不是绝对值。如果你永远旋转180度,它也会有所帮助,因为这更容易表达。