顺时针360度旋转一个按钮,然后逆时针360度旋转。但是没有动画...动画总是顺时针360度旋转。
func animateShowingOfMenu(){
let angle = CGFloat(180 * M_PI / 180)
UIView.animateWithDuration(0.4
, animations: { () -> Void in
self.blurView.hidden=false
self.menuBtn.transform = CGAffineTransformMakeRotation(angle)
self.menuBtn.transform = CGAffineTransformMakeRotation(0)
}) { (completion) -> Void in
print("compeleted")
}
}
func animateHidingOfMenu(){
let angle = CGFloat(-180 * M_PI / 180)
UIView.animateWithDuration(0.4
, animations: { () -> Void in
self.blurView.hidden = true
self.menuBtn.transform = CGAffineTransformMakeRotation(angle)
self.menuBtn.transform = CGAffineTransformMakeRotation(0)
}) { (completion) -> Void in
}
}
4条答案
按热度按时间oxcyiej71#
Swift 5上的简单通用解决方案
你可以旋转任何东西
tjrkku2a2#
Objective-C中的PFB答案:
好好享受吧!
5w9g7ksd3#
这是我假设:
旋转是在最短的方向上完成的。由于180度在两种方向上都是相同的,所以它总是顺时针旋转。所以我们用90度到逆时针来给予一个方向。
ruarlubt4#
雨燕2
雨燕3,4,5