Значение по умолчанию для modalPresentationStyle в iOS 13 - PullRequest
0 голосов
/ 30 сентября 2019

Согласно документации Apple,

Значением по умолчанию для этого свойства является UIModalPresentationStyle.automatic

В iOS 12 значением по умолчанию было UIModalPresentationStyle.fullScreen, и эточто я получаю.

Но когда я запускаю свое приложение на iOS 13, я получаю .pageSheet as navigationController.modalPresentationStyle

Есть ли что-то, что я делаю неправильно, или значение по умолчанию .pageSheet?

Ответы [ 3 ]

4 голосов
/ 30 сентября 2019
  1. UIModalPresentationStyle.automatic переключается между .pageSheet и .fullScreen в зависимости от контекста, в котором представлен UIViewController .
  2. Если вы используете обычный UIViewController , по умолчанию он будет .pageSheet .
  3. Но если вы используете некоторый подкласс UIViewController like UIImagePickerController iOS ожидает, что содержимое должно отображаться в полноэкранном режиме, поэтому по умолчанию оно будет .fullscreen .
  4. Если вы используете iOS версиюменьше 13 по умолчанию всегда будет .fullscreen .
1 голос
/ 30 сентября 2019

Стиль презентации по умолчанию, выбранный системой. Это UIModalPresentationAutomatic

Автоматически означает, что если мы используем UIImagePickerController и sourceType .photoLibrary, то оно присутствует как каскадное представление. И sourceType .camera, то он присутствует в полноэкранном режиме.

https://developer.apple.com/videos/play/wwdc2019/224/

https://developer.apple.com/documentation/uikit/uimodalpresentationstyle/uimodalpresentationpagesheet?language=objc

1 голос
/ 30 сентября 2019

Стиль презентации - Автоматический, который по умолчанию соответствует листу в iOS 13 при модальном представлении контроллера представления

...