Как представить UIView или UIViewController только в определенной ориентации?(независимо от ориентации устройства) - PullRequest
0 голосов
/ 27 марта 2019

У меня есть приложение, чей корневой контроллер находится в портретном режиме.Но я хочу исправить один из его дочерних контроллеров представления в landscapeLeft.Как я могу это реализовать?

Мои настройки проекта включают в себя альбомную и портретную ориентации приложения.

В контроллере корневого представления:

override var shouldAutorotate: Bool {
        return false
    }    
override var preferredInterfaceOrientationForPresentation: UIInterfaceOrientation
    {
        return .portrait
    }

В контроллере дочернего просмотра:

    override var shouldAutorotate: Bool {
        return false
    }   
    override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
        return .landscapeLeft       
    }
    override var preferredInterfaceOrientationForPresentation: UIInterfaceOrientation
    {
        return .landscapeLeft
    }

Но, похоже, что контроллер дочернего просмотра все еще зафиксирован в портретном режиме, может быть, доминирует настройка в контроллере корневого представления?Если да, то как я должен приспособиться, чтобы реализовать свою цель?

Надеюсь, что кто-то может дать здесь представление.Просто хочу убедиться, что я смотрю в нужном месте.

Большое спасибо!

С уважением, Пол

1 Ответ

0 голосов
/ 27 марта 2019

Зайдите в info.plist и в разделе «поддерживаемые ориентации интерфейса» удалите все, кроме ландшафта (левая кнопка «Домой») или ландшафта (правая кнопка «Домой»). Который когда-либо вы предпочитаете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...