0

我使用下面的代碼更改的UIImageView的圖像時,iPad的方向改變改變UIImagView圖像時的iPad改變其方向

-(void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation 
{ 
if((self.interfaceOrientation == UIDeviceOrientationLandscapeLeft) || (self.interfaceOrientation == UIDeviceOrientationLandscapeRight)) 
{ 
    self.background=self.background_D; 
    self.backgroundImage.backgroundColor = [UIColor colorWithPatternImage:self.background]; 
} 
else if((self.interfaceOrientation == UIDeviceOrientationPortrait) || (self.interfaceOrientation == UIDeviceOrientationPortraitUpsideDown)) 
{ 
    self.background=self.background_P; 
    self.backgroundImage.backgroundColor = [UIColor colorWithPatternImage:self.background]; 
} 
} 

一切工作正常,當我改變方向需要停頓了一秒鐘,除然後改變圖像。同時它以平鋪格式顯示相同的舊圖像。我該怎麼做才能避免這種情況?

薩米特

回答

0

例如,你可以使用兩種觀點既內容和實施willRotateToInterfaceOrientation:,並把動畫在那裏,你淡出一個觀點出來,另外一個。如果你設置正確的時機,你的過渡應順利完成定向交換時,請順利完成。要製作動畫,請使用beginAnimations:和相關方法,或者使用iOS 4向上[UIView animateWithDuration:delay:options:animations:completion:]http://www.raywenderlich.com/2454/how-to-use-uiview-animation-tutorial是動畫的入門者。

更好的方法是實現willAnimateRotationToInterfaceOrientation:duration:,它已經在動畫塊中被調用。在這裏你只需要重新配置塊的alpha值,動畫就可以完成剩下的工作。請注意,除此之外,您甚至可以實施willAnimateFirstHalfOfRotationToInterfaceOrientation:duration:,您可以在其中隱藏可見圖像,然後在willAnimateSecondHalfOfRotationFromInterfaceOrientation:duration:的位置顯示另一個。

+0

試過還是面臨同樣的問題:P – slonkar