我用旋轉320×320的UIView(黑色)上使用以下代碼包含一些CALayers iPhone試驗:有人可以解釋UIView奇怪的旋轉?
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:2];
CGAffineTransform rr=CGAffineTransformMakeRotation(M_PI_2*2);
self.transform=rr;
[UIView commitAnimations];
}
注意M_PI_2是PI/2(math.h中)。此代碼將視圖旋轉180°。但是,如果我將其更改爲M_PI_2本身(無* 2),黑色的UIView消失,內容下移和向右,然後旋轉屏幕外的大部分。爲什麼是這樣?我很難理解爲什麼視圖不會旋轉90°。
'M_PI_2 * 2'是非常愚蠢的,只是使用'M_PI'。 –
當然,我正在試圖理解奇怪的行爲。 – ahwulf
如果我將它改爲[self.layer setAffineTransform:rr];那麼它的工作。奇怪的。 – ahwulf