Скользящая модальная презентация - отключите интерактивное увольнение в iOS 13 - PullRequest
5 голосов
/ 05 июня 2019

iOS 13 представляет новый modalPresentationStyle для модально представленных контроллеров представления ...

The new sliding modal presentation in iOS 13

… и его можно отклонить, сдвинув представленный контроллер представления вниз (интерактивное отклонение) . Даже несмотря на то, что новая функция смахивания на удаление довольно полезна, она не всегда может быть желательна. Итак, вопрос:

Как мы можем отключить интерактивное увольнение? - Не забывайте, что по умолчанию включено .

Ответы [ 2 ]

4 голосов
/ 05 июня 2019

UIViewController содержит новое свойство с именем isModalInPresentation, которое должно быть установлено на true для предотвращения интерактивного отклонения.

Если true, UIKit игнорирует события за пределами границ контроллера представленияи предотвращает интерактивное отключение контроллера представления, пока он находится на экране.По умолчанию false.

~ Официальная бета-документация сокращенно modalInPresentation .

1 голос
/ 07 июня 2019
  1. Если вы хотите использовать то же поведение, что и в предыдущей версии IOS (UIModalPresentationStyle.fullScreen

    let someViewController = \*VIEW CONTROLLER*\
    someViewController.modalPresentationStyle = .fullScreen
    

    А если вы используете раскадровку, просто выберите segua и выберите Full Screen из выпадающего списка Presentation.

    enter image description here

  2. Если вы просто хотите отключить интерактивное отклонение и сохранить новый стиль представления, установленный UIViewController свойство isModalInPresentation в true.

    if #available(iOS 13.0, *) {
        someViewController.isModalInPresentation = true // available in IOS13
    }
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...