2009-03-02 17 views
5

Rozwijam grę, w której korzystam z trybu Krajobraz Mam pełny widok 4. 2 widoki prawidłowo nadchodzą w trybie poziomym. Ale w trzecim widoku mam pasek UITable i Navigation. Potrafię obracać stół w trybie poziomym, ale nie mogę zmienić paska nawigacji i kontrolera nawigacji. Pasek nawigacyjny i kontroler nawigacyjny mają również przycisk na nim. Nie ulega również przekształceniu. Więc każdy może znaleźć rozwiązanie. :)Jak przekształcić pasek nawigacyjny i kontroler nawigacyjny w trybie poziomym

Odpowiedz

2

Zmień pasek nawigacji nagrywarki, obracając go o 90 stopni. Możesz także potrzebować ustawić środek i ramkę paska nawigacyjnego, aby ustawić odpowiednią szerokość, aby pasowała do trybu poziomego ... to działało dla mnie :) mam nadzieję, że ci to pomoże.

1

W UIViewController Documentation za klasę:

Handling Obroty

nieruchomość interfaceOrientation
- shouldAutorotateToInterfaceOrientation:
- rotatingFooterView
- rotatingHeaderView
- willRotateToInterfaceOrientation: czas trwania:
- willAnimateFirstHalfOfRotationToInter faceOrientation: czas trwania:
- willAnimateSecondHalfOfRotationFromInterfaceOrientation: czas trwania:
- didRotateFromInterfaceOrientation:

nadzieja ta pomaga też.

A.

+0

Dziękuję za odpowiedź to dział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

jakiegoś kontekstu. Prawdziwy słodki sos zmienia widok kontrolera nawigacyjnego. – avelis

Powiązane problemy