Представляя контроллер вида модально, мы можем установить modalPresentationStyle
на .formSheet
:
В горизонтально-регулярной среде контроллер представления имеет такой размер, чтобы его область содержимого была меньше размера экрана, а под содержимым помещался вид затемнения ...
В горизонтально компактной среде этот параметр работает так же, как UIModalPresentationStyle.fullScreen.
Я бы хотел, чтобы мой модально представленный контроллер представления обновлял свою компоновку в зависимости от того, представлен ли он в этом стиле формы с уменьшенной шириной, или в полноэкранном режиме. Но горизонтальный размер модального класса составляет всегда compact
, даже когда на iPad Pro в полноэкранном режиме.
Класс горизонтального размера , представляющий контроллер представления , может сказать мне, что мне нужно знать (как упоминалось выше в документации Apple). Но это означает наблюдение изменений в traitCollection в каждом контроллере представления, которые могут представить мой модальный режим, просто чтобы они передавали их в контроллер модального представления.
Есть ли какой-нибудь способ для самого контроллера модального представления узнать, какой стиль он использует, и получать оповещения при его изменении, чтобы он мог ответить?