O ile wiem, prawidłowa praktyka na iOS 6 jest napisanie kodu tak, aby obsługiwać AutoRotation:Jaki jest sens iOS 6 - (BOOL) powinienAutorotować?
// iOS 6
- (BOOL)shouldAutorotate {
return YES;
}
- (NSUInteger)supportedInterfaceOrientations {
return UIInterfaceOrientationMaskPortrait;
}
zamiast pisać
// pre-iOS 6 support
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
BOOL retVal = UIInterfaceOrientationIsLandscape(toInterfaceOrientation);
return retVal;
}
Szczerze mówiąc, myślę, że przed -iOS 6 jest o wiele bardziej przejrzysty: nie rozumiem sensu posiadania 2 metod radzenia sobie z autorotacją, zwłaszcza, że widziałem -(BOOL) shouldAutorotate
powracając YES
we wszystkich przykładach. Czy czegoś brakuje?
jest w rzeczywistości gorszy. UInterfaceOrientationIsLandscape nie mówi mi, czy interfejs w pionie lub w pionie jest odwrócony. I co musimy teraz zrobić, gdy musimy powiedzieć "Tak, obróć, ale tylko jeśli chcesz obrócić do portretu"? Nie mogę teraz sprawdzić "ToInterfaceOrientation" przed UIInterfaceOrientationMaskPortrait, ponieważ nie ma go w nowym "shouldAutorotate". – Indoor