Почему iPad Split View 2/3 показывает компактный горизонтальный размер класса? - PullRequest
0 голосов
/ 05 марта 2020

У меня следующий код в используемом мной viewController:

override func viewDidLayoutSubviews() {
    super.viewDidLayoutSubviews()
    print("viewDidLayoutSubviews")
    if traitCollection.horizontalSizeClass == .compact {
        print("C")
    } else {
        print("R")
    }
}

Когда я запускаю приложение и поворачиваю симулятор в портретном режиме, оно печатает:

viewDidLayoutSubviews
C

В ландшафтном режиме он печатает это:

viewDidLayoutSubviews
R

Я не понимаю, почему в портретном (как показано на рисунке) класс горизонтального размера все еще компактен? Разве это не должно быть регулярным? Из того, что я понимаю, сафари в этом случае - компактный класс, и мое приложение здесь на левой стороне должно быть регулярным. Почему это не так? Пейзаж прекрасно работает.

enter image description here

Я также протестировал тот же код на устройстве (iPad Pro (12,9-дюймовый), 3-го поколения), и он имеет то же самое поведение не соответствует, и я не понимаю, почему.

enter image description here

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