2009-03-02 83 views
5

我正在開發一個遊戲,其中我使用橫向模式我總共有4個視圖。 2個視圖正在以風景模式進入。但在第三個視圖中,我有UITable和導航欄。我可以在橫向模式下旋轉表格,但無法轉換導航欄和導航控制器。導航欄和導航控制器也有它的按鈕。它也沒有得到改變。所以任何人都可以有這個解決方案。 :)如何在橫向模式下轉換導航欄和導航控制器

回答

2

通過旋轉90度來轉換混控控制器的導航欄。 此外,你可能需要設置導航欄中心和框架設置合適的寬度,以適應風景模式..它爲我工作:) 希望它可以幫助你。

1

在UIViewController的文檔的類別:

處理輪作

interfaceOrientation財產
- shouldAutorotateToInterfaceOrientation:
- rotatingFooterView
- rotatingHeaderView
- willRotateToInterfaceOrientation:時間:
- willAnimateFirstHalfOfRotationToInter faceOrientation:時間:
- willAnimateSecondHalfOfRotationFromInterfaceOrientation:時間:
- didRotateFromInterfaceOrientation:

希望這可以幫助你。

A.

+0

謝謝您的回答它的工作原理 – Jyotsna 2009-03-02 10:55:06

7
#define degreesToRadians(x) (M_PI * x/180.0) 

- (void)viewWillAppear:(BOOL)animated 
{ 

    [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight]; 

    CGRect newBounds = CGRectMake(0, 0, 480, 320); 
    self.navigationController.view.bounds = newBounds; 
    self.navigationController.view.center = CGPointMake(newBounds.size.height/2.0, newBounds.size.width/2.0); 

    self.navigationController.view.transform = CGAffineTransformMakeRotation(degreesToRadians(90)); 

    [super viewWillAppear:animated]; 
} 

- (void)viewWillDisappear:(BOOL)animated 
{ 
    self.navigationController.view.transform = CGAffineTransformIdentity; 
    self.navigationController.view.transform = CGAffineTransformMakeRotation(degreesToRadians(0)); 
    self.navigationController.view.bounds = CGRectMake(0.0, 0.0, 320.0, 480.0); 

    [super viewWillDisappear:animated]; 
} 
+0

對於一些背景。真正的甜汁正在改變導航控制器的視野本身。 – avelis 2014-03-28 15:17:45

相關問題