Я пытаюсь сделать вид наложения камеры поверх камеры в соответствии с ориентацией экрана.Поскольку , даже если вы заблокировали ориентацию экрана в настройках, камера все равно поворачивает свой пользовательский интерфейс (кнопки вспышки и камеры, которые находятся в режиме предварительного просмотра в реальном времени), если я не перемещаю элементы, которые есть напредставление наложения, оно остается поверх них.
Я уже выполнил это, зарегистрировавшись в уведомлении UIDeviceOrientationDidChangeNotification
, а затем прочитав значение в [UIDevice currentDevice].orientation
и установив значение преобразования моего вида наложения камеры.
Проблема в том, что уведомление UIDeviceOrientationDidChangeNotification
не срабатывает, когда пользователь блокирует интерфейс на своем iPhone (, но камера продолжает вращаться !).
Я пробовал несколько альтернатив, например, зарегистрировался в уведомлении PLCameraDeviceOrientationChangedNotification
, которое я обнаружил, когда меня регистрировали, когда я регистрировался для каждого уведомления, но он не содержиториентация на словарь userInfo.Я также пытался настроить NSTimer
для запуска каждые 0,5 с и проверить [UIDevice currentDevice].orientation
, но он всегда сообщает UIDeviceOrientationPortrait, когда он заблокирован, независимо от фактической ориентации устройства.
Есть ли в любом случае Я могу определить ориентацию камеры и, в идеале, получать уведомления, когда она меняется даже при заблокированной пользователем ориентации интерфейса?
Спасибо.