В ответе Джереми отсутствует чрезвычайно важная информация о [[UIDevice currentDevice] orientation]
- согласно документам Apple:
Значение этого свойства всегда возвращает 0, если только уведомления об ориентации не были включены путем вызова beginGeneratingDeviceOrientationNotifications.
Прежде чем позвонить [[UIDevice currentDevice] orientation]
, сначала необходимо позвонить [[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications]
.
Когда вы закончите, вы должны также позвонить endGeneratingDeviceOrientationNotifications
в какой-то момент.
Тем не менее, стоит отметить, что иногда симулятор может не передавать изменения ориентации: я настоятельно рекомендую проверить изменения ориентации на устройстве. Существуют крайние случаи, которые вы не увидите на симуляторе, которые обязательно будут иметь место на реальном оборудовании.