2016-12-09 5 views
0

У меня есть приложение для iPad, которое должно работать только в ландшафтном режиме. Но я должен показать UIImagePickerController. Согласно документации UIImageController работает только с портретным режимом.Ошибка при представлении UIImageViewController на iPad в ландшафтном режиме

Если я disabple портретной ориентации и настоящий UIImageViewController я получаю аварии с

«Поддерживаемые ориентации не имеет общей ориентации с приложения и [PUUIAlbumListViewController shouldAutorotate]»

Как настроить проект, чтобы отключить Портретный режим на iPad и позволяет показывать UIImagePickerController?

+0

ли вы показать ImagePicker в поповер? – Nimble

+0

Нет, я сделал self.present () –

+0

Если поповер стиль не противоречит вашим требованиям, установленным modalPresentationStyle в .popover (это свойство в UIImagePickerController) – Nimble

ответ

0

У вас нет выбора. Как вы уже сказали, решение чтобы включить ориентацию изображения в приложении.

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

+0

И как я могу это решить? Приложение должно работать только в Пейзаже без поворота на портрет –

1

Мое решение без установки режима Портрет

let imagePicker = UIImagePickerController() 
    imagePicker.modalPresentationStyle = .popover 
    imagePicker.popoverPresentationController?.sourceView = self.view 
    imagePicker.sourceType = (UIImagePickerController.isSourceTypeAvailable(.camera)) ? .camera : .photoLibrary 
    imagePicker.delegate = self