【iOS】關於檢視的旋轉和復原(CGAffineTransform)
我就以我自己的簡單的旋轉來拋磚引玉了。
首先,你建立一個view,然後實現view 的旋轉動畫和復原
旋轉的的程式碼:
[UIView animateWithDuration:2.0f animations:^{
self.tranView.transform = CGAffineTransformMakeRotation(M_PI);
} completion:^(BOOL finished) {
}];
順時針旋轉180度
復原的兩種方式程式碼:
[UIView animateWithDuration:2.0f animations:^{ // 復原 self.tranView.transform = CGAffineTransformIdentity; // 復原第二種方法 // self.tranView.transform = CGAffineTransformMakeRotation(2*M_PI); } completion:^(BOOL finished) { }];
關於旋轉的角度:
/* Return a transform which rotates by `angle' radians:
t' = [ cos(angle) sin(angle) -sin(angle) cos(angle) 0 0 ] */
CG_EXTERN CGAffineTransform CGAffineTransformMakeRotation(CGFloat angle)
輸入的是弧度,需要把角度轉化為弧度。
由於CGAffineTransform 實現旋轉的方式很多,在此相當於拋磚引玉了,自行研究一下!