Ho riscontrato questo problema con l'SDK di iOS 6: sto avendo alcune viste che dovrebbero essere abilitate a ruotare (ad esempio una videoview), e alcune che non lo sono. Ora capisco che devo controllare tutti gli orientamenti nell'Info.plist dell'app e quindi ordinare in ogni ViewController, cosa dovrebbe accadere. Ma non funziona! L'app ruota sempre sugli orientamenti, che sono indicati nel file Info.plist.Rotazioni di iOS 6: supportatoInterfaceOrientations non funziona?
Info.plist:
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
qualsiasi ViewController che shouldnt essere consentito di ruotare:
//deprecated
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
- (NSUInteger)supportedInterfaceOrientations{
return UIInterfaceOrientationMaskPortrait;
}
Osservazione: App ruota al paesaggio e orientamento verticale. Qualche idea del perché o di quello che sto facendo male?
Cheers, Marc
Edit: I miei ultimi risultati indicano anche, che se si vuole avere la rotazione ad un certo punto della tua applicazione, è avete per attivare tutte e quattro le direzioni di rotazione nelle impostazioni del tuo progetto o Info .plist. Un'alternativa a questo è di ignorare
- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
nel vostro AppDelegate, che sostituisce l'Info.plist. Non è più possibile impostare solo Portrait in Info.plist e quindi avere la rotazione in alcuni ViewController ignorando shouldAutorotateToInterfaceOrientation o supportInterfaceOrientations.
Questo è sotto NDA, post nei forum di Apple Dev e posso aiutare. –
È meglio così? Immagino che ora a nessuno importerebbe più di danneggiare NDA ... – stk
è ancora un NDA, anche io direi che questo è un problema comune ed è stato pienamente risposto nei forum di sviluppo già – wattson12