2013-07-28 58 views
0

我已經創建了一個UIButton編程旋轉,使用下面的代碼如何中心一個UIButton設備在iOS的

button.center = CGPointMake(self.view.center.x, 50); 

當設備旋轉時,它不再在中心水平居中之後。我該如何解決這個問題?提前致謝。

回答

1

凱文是正確的,但更好的解決辦法是設置按鈕的中心在您的視圖控制器的willAnimateRotationToInterfaceOrientation:duration:方法。

- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation duration:(NSTimeInterval)duration 
{ 
    button.center = CGPointMake(self.view.center.x, 50); 
} 

他使用didRotateFromInterfaceOrientation:fromInterfaceOrientation方法,其中,作爲蘋果的文件指出「這種方法可以用來重新啓用查看的互動,重新啓動媒體播放,或打開昂貴的圖紙或實時更新。

在佈置子視圖的情況下,willAnimateRotationToInterfaceOrientation:duration:將提供更平滑的過渡,因爲它是從旋轉的動畫塊中調用的。

1
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation 
{ 
    button.center = CGPointMake(self.view.center.x, 50); 
}