Как получить вывод для UIInterfaceOrientation? - PullRequest
0 голосов
/ 03 октября 2018

Я хотел бы иметь возможность получить ориентацию моего iOS приложения view, используя UIInterfaceOrientation.

Это отличается от UIDevice.current.orientation, поскольку это возвращает, как устройство должно вращаться, а неего фактическое вращение и возможность возврата unknown.

Я заметил UIInterfaceOrientation.portrait, UIInterfaceOrientation.portraitUpsideDown, UIInterfaceOrientation.landscapeLeft и UIInterfaceOrientation.landscapeRight, но я не уверен, как их обнаружить.

Мне нужно это, чтобы мой User Interface мог корректно обновляться, когда UIDevice.current.orientation возвращает unknown или неправильную ориентацию, это разрушает пользовательский интерфейс.

1 Ответ

0 голосов
/ 04 октября 2018

Пожалуйста, ознакомьтесь с документацией здесь:

https://developer.apple.com/documentation/uikit/uiinterfaceorientation

особенно первый абзац, который гласит:

Начиная с iOS 8, вы должны использовать UITraitCollectionи API-интерфейсы UITraitEnvironment, а также свойства класса размеров, используемые в этих API-интерфейсах, вместо использования констант UIInterfaceOrientation или написания приложения с точки зрения ориентации интерфейса.

Вообще говоря, ваш код не должен зависеть от устройстватекущая ориентация интерфейса.Вместо этого он должен полагаться на черты текущего контроллера представления для обработки изменений ориентации.Для получения дополнительной информации см .:

https://developer.apple.com/library/archive/featuredarticles/ViewControllerPGforiPhoneOS/TheAdaptiveModel.html

...