我需要时钟指针从顺时针方向旋转-180到180,但似乎CGAffineTransform
功能在另一个方向上做最短路径。我尝试了不同的方法,但我找不到解决方案:
img_clock.transform = CGAffineTransform(rotationAngle: CGFloat(-118 * Float.pi / 180))
UIView.animate(withDuration: 15.0, delay : 0, options: .curveLinear , animations: {
self.img_clock.transform = CGAffineTransform(rotationAngle: CGFloat(118 * Float.pi / 180))
}, completion : nil)
答案 0 :(得分:2)
在iOS中,正值指定逆时针旋转,负值指定顺时针旋转。
这是真的,它将在最短的方向旋转。你需要超过360度的旋转。在这种情况下,您需要将PI与3相乘。
检查以下代码:
img_clock.transform = CGAffineTransform(rotationAngle: CGFloat(-118 * Float.pi / 180))
UIView.animate(withDuration: 15.0, delay : 0, options: .curveLinear , animations: {
self.img_clock.transform = CGAffineTransform(rotationAngle: CGFloat(118 * Float.pi * 3 / 180))
}, completion : nil)