Ориентация устройства iPad нулевая?

([UIDevice currentDevice].orientation);

используя приведенный выше код в моем приложении, все, что я получаю, это 0 (неизвестно)

здесь что-то не так? Кажется довольно простым

редактировать: дополнительные исследования привели меня к проблеме с использованием ориентации устройства в начале приложения, что я и делаю. Однако, когда я вместо этого использую interfaceOrientation, он всегда возвращает 1 (портрет)


person Brodie    schedule 31.05.2010    source источник


Ответы (2)


Вы видите это в симуляторе или на устройстве?

Симулятор, кажется, всегда возвращает 0, независимо от его ориентации.

Если вы видите это на устройстве, убедитесь, что вы звоните

[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];

Из документации:

Вы должны вызвать этот метод, прежде чем пытаться получить данные об ориентации от приемника.

person Jasarien    schedule 31.05.2010

Откуда вы знаете, что это ноль? Записав значение?

Свойство orientation является числовым значением (enum), поэтому вы должны обязательно зарегистрировать его как таковое:

NSLog("%d",[UIDevice currentDevice].orientation);
person Philippe Leybaert    schedule 31.05.2010
comment
хорошо, это моя вина за неправильную регистрацию, но она все еще регистрируется как 0 (что, я думаю, неизвестно). См. пересмотренный Вопрос - person Brodie; 31.05.2010
comment
Не работает, пока устройство не повернут в первый раз, иначе вы получите неизвестную ориентацию - person jjxtra; 28.01.2011