2009-03-02 7 views
5

가로 모드를 사용중인 게임을 개발 중입니다. 총 4 개의보기가 있습니다. 가로 모드에서 2 개의보기가 올바르게오고 있습니다. 하지만 세 번째보기에서는 UITable과 탐색 모음이 있습니다. 내가 가로 모드에서 테이블을 회전시킬 수 있지만 네비게이션 바 및 탐색 컨트롤러를 변형 할 수 없습니다. 탐색 표시 줄과 탐색 컨트롤러에도 Button이 있습니다. 또한 변형되지 않습니다. 그래서 누구든지 이것에 대한 해결책을 가질 수 있습니다. :)가로 모드에서 탐색 모음 및 탐색 컨트롤러를 변환하는 방법

답변

2

Nagvigation 컨트롤러의 탐색 표시 줄을 90도 회전하여 변형하십시오. 또한 가로 모드에 맞게 적절한 너비를 설정하기 위해 탐색 모음 중앙과 프레임을 설정해야 할 수도 있습니다. 나를 위해 일했습니다. 희망도 도움이됩니다.
- rotatingFooterView
- rotatingHeaderView
- willRotateToInterfaceOrientation : 지속 시간 :
- willAnimateFirstHalfOfRotationToInter - : UIViewController에 문서의 클래스에서

1

는 shouldAutorotateToInterfaceOrientation

interfaceOrientation 속성
회전을 취급 faceOrientation : 지속 시간 :
- willAnimateSecondHalfOfRotationFromInterfaceOrientation : 지속 시간 :
- didRotateFromInterfaceOrientation이 너무 당신을 도와줍니다

희망.

+0

A. 당신의 대답은 어떤 컨텍스트를 들어 – Jyotsna

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