2010-12-29 6 views
0

In iPad meiner App habe ich 2 Ansichten, die erste Ansicht kann Hoch- oder Querformat sein, aber die zweite Ansicht sollte Querformat sein. Also machte ich gewaltsam die zweite Ansicht im Querformat dargestellt werden unter Verwendung der untenHelfen Sie mir bei der Geräteausrichtung

[[UIApplication sharedApplication] setStatusBarOrientation: 
     UIInterfaceOrientationLandscapeRight]; 

Aber was mein Problem ist, nachdem auf den zweiten Blick kommt, wenn ich das Gerät überprüfen orienatation es gibt „Portrait“. Die zweite Ansicht befindet sich jedoch immer im Querformatmodus. Aber warum ich die falsche Orientierung bekomme.

Vielen Dank für jede Hilfe

+0

sollten Sie zwei UIViewControllers haben, wobei die shaintAutorotateToInterfaceOrientation-Methode überschrieben wird, damit sie in beiden Situationen ein unterschiedliches Verhalten aufweisen – JonLOo

Antwort

2

die Ausrichtung einzustellen, eine UIViewController oder ähnliches hat eine Funktion, die Sie überschreiben können.

Überprüfen Sie speziell diese apple doc und scrollen Sie nach unten zu "shouldAutorotateToInterfaceOrientation:".

-Code Landscape-Modus zu zwingen, sollte etwas wie folgt aussehen:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{ 
if ((interfaceOrientation==UIInterfaceOrientationPortrait)||(interfaceOrientation==UIInterfaceOrientationPortraitUpsideDown)) 
{ 
    return NO; 
} 
else if ((interfaceOrientation==UIInterfaceOrientationLandscapeLeft)||(interfaceOrientation==UIInterfaceOrientationLandscapeRight)) 
{ 
    return YES; 
} 
else { 
    return YES; 
} 
} 

sollte dieser Code in einem View-Controller-Objekt enthalten sein und wird automatisch, wenn die View-Controller initiiert wird genannt.