Почему предпочтительныйContentSize не работает при представлении UIViewController с помощью PresentationStyle = .formShe ⇐ IOS
-
Anonymous
Почему предпочтительныйContentSize не работает при представлении UIViewController с помощью PresentationStyle = .formShe
Я просто пытаюсь протестировать эффект preferredContentSize с помощью кода ниже:
let vc = CustomViewController() vc.modalPresentationStyle = .formSheet self.preferredContentSize = CGSize (ширина: 50, высота: 50) self.present(vc, анимированный: true) Но похоже, что свойство preferredContentSize вообще не работает. Я могу с уверенностью сказать, что «CustomViewController» не имеет побочного эффекта в этой проблеме, поскольку это пустой подкласс UIViewController.
Согласно официальной документации:
В классе размеров обычной ширины и обычной высоты система добавляет слой затемнения поверх фонового содержимого и центрирует содержимое контроллера представления поверх этого слоя. Размер содержимого по умолчанию меньше, чем у стиля UIModalPresentationStyle.pageSheet. Часть фонового контента всегда остается видимой. Чтобы задать собственный размер контента, используйте свойствоeferredContentSize контроллера модального представления.
Я нашел много похожих вопросов, но почти все они касаются презентации с помощью всплывающего окна. Мой вопрос заключается в том, работает ли preferredContentSize только со стилем .popover или со стилем .formSheet.
И если это работает с презентацией в стиле .formSheet, что не так с моим кодом? Любая подсказка будет оценена.
Я просто пытаюсь протестировать эффект preferredContentSize с помощью кода ниже:
let vc = CustomViewController() vc.modalPresentationStyle = .formSheet self.preferredContentSize = CGSize (ширина: 50, высота: 50) self.present(vc, анимированный: true) Но похоже, что свойство preferredContentSize вообще не работает. Я могу с уверенностью сказать, что «CustomViewController» не имеет побочного эффекта в этой проблеме, поскольку это пустой подкласс UIViewController.
Согласно официальной документации:
В классе размеров обычной ширины и обычной высоты система добавляет слой затемнения поверх фонового содержимого и центрирует содержимое контроллера представления поверх этого слоя. Размер содержимого по умолчанию меньше, чем у стиля UIModalPresentationStyle.pageSheet. Часть фонового контента всегда остается видимой. Чтобы задать собственный размер контента, используйте свойствоeferredContentSize контроллера модального представления.
Я нашел много похожих вопросов, но почти все они касаются презентации с помощью всплывающего окна. Мой вопрос заключается в том, работает ли preferredContentSize только со стилем .popover или со стилем .formSheet.
И если это работает с презентацией в стиле .formSheet, что не так с моим кодом? Любая подсказка будет оценена.
Мобильная версия