Per quanto ne so la pratica corretta su iOS 6 è quello di scrivere un codice come questo per gestire autorotazione:Qual è il punto di iOS 6 - (BOOL) shouldAutorotate?
// iOS 6
- (BOOL)shouldAutorotate {
return YES;
}
- (NSUInteger)supportedInterfaceOrientations {
return UIInterfaceOrientationMaskPortrait;
}
Invece di scrivere
// pre-iOS 6 support
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
BOOL retVal = UIInterfaceOrientationIsLandscape(toInterfaceOrientation);
return retVal;
}
Per essere onesto, penso che la pre -iOS 6 è molto più chiaro: non capisco il punto di avere 2 metodi per gestire l'autorotazione, specialmente perché ho visto restituendo YES
in tutti gli esempi. Mi sto perdendo qualcosa?
in realtà è peggio. UIInterfaceOrientationIsLandscape non mi dice se l'interfaccia in verticale o verticale è capovolta. E cosa dobbiamo fare ora quando dobbiamo dire "Sì, ruota ma solo se vuoi ruotare in verticale"? Non riesco ora a selezionare 'toInterfaceOrientation' su UIInterfaceOrientationMaskPortrait poiché non è presente nel nuovo 'shouldAutorotate'. – Indoor