da iOS6 ho grossi problemi con la rotazione. Ho implementato tutti i nuovi metodi di rotazione (shouldAutorotate, preferredInterfaceOrientationForPresentation, supportedInterfaceOrientation), ma tutte le visualizzazioni sono ancora in rotazione. La cosa divertente è che le visualizzazioni mantengono le loro dimensioni e il resto della finestra (in Landscape) è nero.ios 6 App sta ruotando, anche con shouldAutorotate: NO
Questo è il modo in cui lo implemento, c'è qualcosa di sbagliato?
#pragma mark -
#pragma mark - InterfaceOrientation iOS 5
//Deprecated in iOS 6
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
#pragma mark -
#pragma mark - InterfaceOrientation iOS 6
- (BOOL)shouldAutorotate{
return NO;
}
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation{
return UIInterfaceOrientationPortrait;
}
- (NSUInteger)supportedInterfaceOrientations{
return UIInterfaceOrientationMaskPortraitUpsideDown;
}
Grazie per il vostro aiuto, gente.
Non dovrebbe essere quest'ultimo "UIInterfaceOrientationMaskPortrait'? –
Va bene se ruota su entrambi gli orientamenti verticale, ma non deve ruotare sull'orientamento orizzontale – Fry
Basta provare a cambiare il supporto di orientamento predefinito dell'app, ad esempio nel file plist sotto il tasto "Orientamento interfaccia supportato" selezionare solo due interfacce supportate. Questo risolverà il tuo problema :) –