Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека Разработчика iOS

Разработчик

Ссылка платформы UIKit ссылка класса UIPresentationController

Опции
Развертывание Target:

На этой странице
Язык:

UIPresentationController

Наследование


Оператор импорта


Swift

import UIKit

Objective C

@import UIKit;

Доступность


Доступный в iOS 8.0 и позже.

A UIPresentationController объект обеспечивает усовершенствованное управление представлением и переходом для представленных контроллеров представления. Со времени представлен контроллер представления до времени это отклонено, UIKit использует контроллер представления для управления различными аспектами процесса представления для того контроллера представления. Контроллер представления может добавить свои собственные анимации поверх предоставленных объектами Animator, он может реагировать на изменения размера, и он может управлять другими аспектами того, как контроллер представления представлен на экране.

Когда Вы представляете контроллер представления с помощью presentViewController:animated:completion: метод, UIKit всегда управляет процессом представления. Часть того процесса включает создание контроллера представления, который является подходящим для данного стиля презентации. Для встроенных стилей (такой как UIModalPresentationPageSheet стиль), UIKit определяет и создает необходимый объект контроллера представления. Единственное время Ваше приложение может обеспечить свой собственный контроллер представления, для контроллера представления, стиль презентации которого установлен в UIModalPresentationCustom. Для пользовательских стилей презентации у Вас есть опция обеспечения пользовательского контроллера представления или использования контроллера представления по умолчанию. Вы могли бы обеспечить пользовательский контроллер представления, когда Вы хотите добавить теневые представления представления или художественного оформления под представляемым контроллером представления или когда Вы хотите изменить поведение представления другими способами.

Когда Вы хотите, чтобы UIKit использовал Ваш пользовательский контроллер представления, необходимо продать тот объект к UIKit через переходящего делегата контроллера представления. В то время как представленный контроллер представления является экранным, UIKit поддерживает ссылку на Ваш объект контроллера представления. Для получения информации о переходящем делегате и объектах это обеспечивает, посмотрите Ссылку на протокол UIViewControllerTransitioningDelegate.

Процесс представления

Процесс представления, которым управляет контроллер представления, разделен на три фазы:

  • Фаза представления включает перемещение нового контроллера представления на экране через ряд анимаций перехода.

  • Фаза управления включает изменения среды ответа (такие как вращения устройства), в то время как новый контроллер представления является экранным.

  • Фаза увольнения включает перемещение нового контроллера представления от экрана через ряд анимаций перехода

Роль контроллера представления во время всех этих фаз должна управлять своими собственными представлениями и информацией состояния. Во время представления и фаз увольнения, контроллер представления добавляет свои пользовательские представления (если таковые имеются) к иерархии представления и создает любые надлежащие анимации перехода для тех представлений. Анимацией представления контроллера представления на экран все еще управляет объект Animator — т.е. объект, принимающий UIViewControllerAnimatedTransitioning протокол. UIKit вызывает отдельные методы контроллера представления вначале и конец представления и фаз увольнения так, чтобы контроллер представления мог выполнить любую необходимую очистку.

Добавление пользовательских представлений к представлению

UIPresentationController класс определяет определенные точки входа для управления иерархией представления при представлении контроллера представления. Когда контроллер представления собирается быть представленным, UIKit вызывает контроллер представления presentationTransitionWillBegin метод. Можно использовать тот метод, чтобы добавить представления к иерархии представления и установить любые анимации, связанные с теми представлениями. В конце фазы представления UIKit вызывает presentationTransitionDidEnd: метод, чтобы сообщить, что закончился переход.

Перечисление 1 показывает демонстрационную реализацию presentationTransitionWillBegin и presentationTransitionDidEnd: методы для пользовательского контроллера представления. В этом примере контроллер представления добавляет потускневшее представление как фон к представленному контроллеру представления. ( _dimmingView переменная относится к пользовательскому UIView возразите, что Вы обеспечили бы.) При представлении контроллера представления, presentationTransitionWillBegin метод добавляет потускневшее представление сначала и встраивает содержание контроллера представления в том потускневшем представлении. Это тогда конфигурирует анимацию постепенного появления для выполнения рядом с другими анимациями перехода. Если пользователь прерывает процесс представления, возможно посредством интерактивного жеста, presentationTransitionDidEnd: удаляет потускневшее представление. Если представление успешно выполняется, и потускневшее представление и представленный контроллер представления остаются экранными, пока они не отклонены.

Перечисление 1Adding пользовательское представление во время представления
  • - (void)presentationTransitionWillBegin {
  • // Add a custom dimming view behind the presented view controller's view
  • [[self containerView] addSubview:_dimmingView];
  • [_dimmingView addSubview:[[self presentedViewController] view]];
  • // Use the transition coordinator to set up the animations.
  • id <UIViewControllerTransitionCoordinatorContext> transitionCoordinator =
  • [[self presentingViewController] transitionCoordinator];
  • // Fade in the dimming view during the transition.
  • [_dimmingView setAlpha:0.0];
  • [transitionCoordinator animateAlongsideTransition:
  • ^(id<UIViewControllerTransitionCoordinatorContext> context) {
  • [_dimmingView setAlpha:1.0];
  • } completion:nil];
  • }
  • - (void)presentationTransitionDidEnd:(BOOL)completed {
  • // Remove the dimming view if the presentation was aborted.
  • if (!completed) {
  • [_dimmingView removeFromSuperview];
  • }
  • }

При отклонении контроллера представления используйте dismissalTransitionWillBegin метод, чтобы сконфигурировать любые анимации и использовать dismissalTransitionDidEnd: метод для удаления любых пользовательских представлений из иерархии представления.

Адаптация для калибровки изменений класса

Изменения класса размера сигнализируют крупномасштабные изменения в том, как Ваше приложение должно представить свое содержание. Контроллеры представления управляют изменения класса размера путем корректировки стиля презентации (по мере необходимости) для их представленного контроллера представления. Корректировки внесены только, когда стиль текущей презентации не целесообразен в новой среде. Например, когда класс размера изменяется от горизонтально регулярного к горизонтально компактному, легкая сдоба становится полноэкранным представлением. Для стилей презентации, которые уже целесообразны в новой среде, такой как полноэкранный стиль презентации, не внесено никакое адаптивное изменение.

Когда класс размера представленного контроллера представления изменяется от горизонтально регулярного к горизонтально компактному, контроллер представления вызывает adaptivePresentationStyle метод для определения, который новый стиль (если таковые имеются) для применения. Когда новый стиль необходим, контроллер представления инициирует переход к новому стилю, который может также связать замену объекта контроллера текущей презентации с новым объектом. Поскольку объект контроллера представления может измениться, всегда получайте контроллер представления от presentationController свойство представленного контроллера представления.

Когда стиль презентации изменяется, контроллер представления также дает Вам возможность указать новый представленный контроллер представления. Прежде, чем инициировать переход, контроллер представления вызывает presentationController:viewControllerForAdaptivePresentationStyle: метод его объекта делегата. При реализации того метода можно использовать его для внесения основных или незначительных корректировок в представленное содержание. Основная корректировка должна была бы заменить контроллер текущего представления полностью новым контроллером представления, который был специально разработан для данного класса размера. Незначительная корректировка должна была бы установить контроллер текущего представления в контроллере навигации для упрощения навигации в новом классе размера.

Реакция на изменения размера

Изменения размера представляют небольшие изменения ширине или высоте представления контроллера представления. Когда устройство вращается между портретными и альбомными ориентациями, Как правило, эти изменения происходят. Когда изменение размера происходит, UIKit вызывает контроллер представления viewWillTransitionToSize:withTransitionCoordinator: метод. В пользовательском представлении используйте тот метод, чтобы изменить пользовательские представления контроллера Вашего представления или внести изменения в иерархию представления. Например, Вы могли бы выгрузить пользовательские представления художественного оформления с, соответствующими новому размеру лучше.

После уведомления Вашего контроллера представления нависшего изменения размера UIKit начинает нормальный процесс создания макета представления. Приложения, использующие автоматическое расположение, не должны должны быть делать что-либо, потому что автоматический механизм создания макета изменяет размеры представлений по мере необходимости. Но если пользовательский контроллер представления должен внести специфичные для расположения изменения, он может сделать так в containerViewWillLayoutSubviews и containerViewDidLayoutSubviews методы. Эти методы эквивалентны viewWillLayoutSubviews и viewDidLayoutSubviews методы UIViewController класс и используемый таким же образом. UIKit вызывает их прежде и после того, как он вызовет layoutSubviews методы представлений в иерархии представления.

Разделение на подклассы примечаний

Для пользовательских стилей презентации необходимо разделить на подклассы UIPresentationController и переопределение, по крайней мере, некоторые его методы для реализации пользовательских способов поведения представления. Используйте свой пользовательский контроллер представления для настройки процесса представления.

Для пользовательских контроллеров представления необходимо вызвать initWithPresentedViewController:presentingViewController: метод во время инициализации. Тот метод является определяемым инициализатором класса. UIKit использует его для выполнения требуемой инициализации для всех объектов контроллера представления.

Методы для переопределения

Если Ваш UIPresentationController подклассы управляют одним или более пользовательскими представлениями, необходимо рассмотреть переопределение следующих методов:

  • Используйте presentationTransitionWillBegin метод, чтобы добавить Ваши пользовательские представления к иерархии представления и анимировать появление тех представлений. Если контроллер представления не может быть представлен, можно удалить те представления в presentationTransitionDidEnd: метод по мере необходимости.

  • Используйте dismissalTransitionWillBegin метод для выполнения анимаций имел отношение к увольнению представленного контроллера представления. Не удаляйте свои пользовательские представления из иерархии представления до dismissalTransitionDidEnd: метод вызывают.

  • Используйте viewWillTransitionToSize:withTransitionCoordinator: метод для внесения любых связанных с размером изменений в пользовательские представления.

Подклассы могут переопределить другие методы этого класса по мере необходимости для обеспечения пользовательского поведения. Например, Вы могли бы переопределить shouldPresentInFullscreen или frameOfPresentedViewInContainerView методы и возвращают различные значения, чем предоставленные реализациями по умолчанию.

  • Инициализирует и возвращает контроллер представления для перехода между указанными контроллерами представления

    Объявление

    Swift

    init(presentedViewController presentedViewController: UIViewController!, presentingViewController presentingViewController: UIViewController!)

    Objective C

    - (instancetype)initWithPresentedViewController:(UIViewController *)presentedViewController presentingViewController:(UIViewController *)presentingViewController

    Параметры

    presentedViewController

    Контроллер представления, представляемый модально.

    presentingViewController

    Контроллер представления, содержание которого представляет начальную точку перехода.

    Возвращаемое значение

    Инициализированный контроллер представления возражает или nil если не мог бы быть инициализирован контроллер представления.

    Обсуждение

    Этот метод является определяемым инициализатором для контроллера представления. Необходимо вызвать его от любых пользовательских методов инициализации, которые Вы определяете для своих подклассов контроллера представления.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • presentingViewController Свойство

    Контроллер представления, который является начальной точкой для представления. (только для чтения)

    Объявление

    Swift

    var presentingViewController: UIViewController { get }

    Objective C

    @property(nonatomic, retain, readonly) UIViewController *presentingViewController

    Обсуждение

    Объект в этом свойстве мог быть корневым контроллером представления окна, родительским контроллером представления, отмеченным как определение текущего контекста или последнего контроллера представления, представленного на экране. Этот контроллер представления может или может не быть тем же самым чей presentViewController:animated:completion: метод вызвали для инициирования процесса представления. Это может не также быть контроллер представления, используемый для инициализации контроллера представления.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • presentedViewController Свойство

    Представляемый контроллер представления. (только для чтения)

    Объявление

    Swift

    var presentedViewController: UIViewController { get }

    Objective C

    @property(nonatomic, retain, readonly) UIViewController *presentedViewController

    Обсуждение

    Этот объект соответствует тому, переданному как первый параметр presentViewController:animated:completion: метод. Успешное завершение процесса представления заставляет это содержание контроллера представления быть выведенным на экран на экране.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • containerView Свойство

    Представление, в котором происходит представление. (только для чтения)

    Объявление

    Swift

    var containerView: UIView! { get }

    Objective C

    @property(nonatomic, readonly) UIView *containerView

    Обсуждение

    UIKit устанавливает значение этого свойства вскоре после получения контроллера представления от Вашего переходящего делегата. Контейнерное представление всегда является наследователем и представления контроллера представления представления и представленного представления контроллера представления. При добавлении пользовательских представлений к представлению добавьте их к контейнерному представлению.

    Если Ваш переход также использует пользовательские объекты Animator, те объекты могут получить это контейнерное представление от containerView свойство объекта контекста, предоставленного UIKit.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Представление, которое будет анимировано во время представления.

    Объявление

    Swift

    func presentedView() -> UIView!

    Objective C

    - (UIView *)presentedView

    Возвращаемое значение

    Представление для представления. Это представление должно быть или представленным представлением контроллера представления или наследователем того представления.

    Обсуждение

    Реализация по умолчанию этого метода возвращает представленное представление контроллера представления. Если Вы хотите анимировать другое представление, можно переопределить этот метод и возврат то представление. Представление, которое Вы указываете, должно или быть представленным представлением контроллера представления или должно быть одним из его наследователей.

    Представление, возвращенное этим методом, также предоставлено для любых объектов Animator, реализовывая переход. Объекты Animator могут получить представление с помощью viewForKey: метод объекта контекста, предоставленного UIKit.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Прямоугольник кадра для присвоения к представленному представлению в конце анимаций.

    Объявление

    Swift

    func frameOfPresentedViewInContainerView() -> CGRect

    Objective C

    - (CGRect)frameOfPresentedViewInContainerView

    Возвращаемое значение

    Прямоугольник представленного представления контроллера представления, указанного в системе координат контейнерного представления.

    Обсуждение

    Реализация по умолчанию этого метода возвращает прямоугольник кадра контейнерного представления, приводящего к представленному содержанию контроллера представления занятие всего места представления. Можно переопределить этот метод и возвратить различный прямоугольник кадра по мере необходимости. Например, Вы могли бы указать меньший прямоугольник кадра, если Вы хотите, чтобы часть базового содержания показала вокруг краев представленного представления.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • overrideTraitCollection Свойство

    Интерфейсные черты для представленного контроллера представления, для использования вместо черт от среды iOS.

    Объявление

    Swift

    @NSCopying var overrideTraitCollection: UITraitCollection?

    Objective C

    @property(nonatomic, copy) UITraitCollection *overrideTraitCollection

    Обсуждение

    Используйте это свойство для обеспечения интерфейсного набора черты для представленного контроллера представления, переопределяя одно или более значений в среде черты iOS.

    Каждое значение Вы помещаете в overrideTraitCollection свойство переопределяет соответствующее значение в среде черты iOS. Например, следующий фрагмент кода показывает, как переопределить масштаб дисплея для представленного контроллера представления, оставив другие черты, поскольку им предоставлена система. Поместите такой код, обычно, в файле реализации для контроллера представления представления:

    • presentedVC.presentationController.overrideTraitCollection = [UITraitCollection traitCollectionWithDisplayScale: 1.5];
    • [self presentViewController: presentedVC animated: NO completion: nil];

    Контроллер представления представления не затронут при помощи этого свойства.

    Значение по умолчанию overrideTraitCollection свойство nil, который приводит к полной среде черты iOS, используемой представленным контроллером представления.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Уведомляет контроллер представления, что расположение собирается начаться на представлениях контейнерного представления.

    Объявление

    Swift

    func containerViewWillLayoutSubviews()

    Objective C

    - (void)containerViewWillLayoutSubviews

    Обсуждение

    UIKit вызывает этот метод прежде, чем скорректировать расположение представлений в контейнерном представлении. Используйте этот метод и containerViewDidLayoutSubviews метод для обновления любых пользовательских представлений, которыми управляет контроллер представления.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Вызванный, чтобы уведомить контроллер представления, что расположение закончилось на представлениях контейнерного представления.

    Объявление

    Swift

    func containerViewDidLayoutSubviews()

    Objective C

    - (void)containerViewDidLayoutSubviews

    Обсуждение

    UIKit вызывает этот метод после корректировки расположения представлений в контейнерном представлении. Используйте этот метод для внесения любых дополнительных изменений в иерархию представления.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Уведомляет контроллер представления, что анимации представления собираются запуститься.

    Объявление

    Swift

    func presentationTransitionWillBegin()

    Objective C

    - (void)presentationTransitionWillBegin

    Обсуждение

    Реализация по умолчанию этого метода ничего не делает. Подклассы могут переопределить его и использовать его, чтобы добавить пользовательские представления к иерархии представления и создать любые анимации, связанные с теми представлениями. Для создания анимаций получите координатора перехода представленного контроллера представления и используйте animateAlongsideTransition:completion: или animateAlongsideTransitionInView:animation:completion: метод для постановки в очередь анимаций. Вызов тех методов гарантирует, что Ваши анимации выполняются в то же время, что и любые другие анимации перехода.

    Для примера того, как реализовать этот метод, посмотрите Добавляющие Пользовательские Представления к Представлению.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Уведомляет контроллер представления, что закончились анимации представления.

    Объявление

    Swift

    func presentationTransitionDidEnd(_ completed: Bool)

    Objective C

    - (void)presentationTransitionDidEnd:(BOOL)completed

    Параметры

    completed

    YEStrue если анимации завершились, и представленный контроллер представления теперь видим или NOfalse если анимации были отменены, и контроллер представления представления все еще видим.

    Обсуждение

    Реализация по умолчанию этого метода ничего не делает. Подклассы могут переопределить этот метод и использовать его для выполнения любой требуемой очистки. Например, если завершенный параметр NOfalse, Вы использовали бы этот метод для удаления любых пользовательских представлений из иерархии представления.

    Для примера того, как реализовать этот метод, посмотрите Добавляющие Пользовательские Представления к Представлению.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Уведомляет контроллер представления, что анимации увольнения собираются запуститься.

    Объявление

    Swift

    func dismissalTransitionWillBegin()

    Objective C

    - (void)dismissalTransitionWillBegin

    Обсуждение

    Реализация по умолчанию этого метода ничего не делает. Подклассы могут переопределить этот метод и использовать его для конфигурирования любых анимаций, связанных с пользовательскими представлениями представления. Для создания анимаций получите координатора перехода представленного контроллера представления и используйте animateAlongsideTransition:completion: или animateAlongsideTransitionInView:animation:completion: метод для выполнения анимаций. Вызов тех методов гарантирует, что Ваши анимации выполняются в то же время, что и любые другие анимации перехода.

    Вы не должны использовать этот метод для удаления представлений из иерархии представления. Удалите свои представления в dismissalTransitionDidEnd: метод вместо этого.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Уведомляет контроллер представления, что закончились анимации увольнения.

    Объявление

    Swift

    func dismissalTransitionDidEnd(_ completed: Bool)

    Objective C

    - (void)dismissalTransitionDidEnd:(BOOL)completed

    Параметры

    completed

    YEStrue если анимации завершились, и представленный контроллер представления был отклонен или NOfalse если анимации были отменены, и представленный контроллер представления все еще видим.

    Обсуждение

    Реализация по умолчанию этого метода ничего не делает. Подклассы могут переопределить этот метод и использовать его для удаления любых пользовательских представлений, что контроллер представления добавил к иерархии представления. Удалите свои представления только если completed параметр YEStrue.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • presentationStyle Свойство

    Стиль презентации представленного контроллера представления. (только для чтения)

    Объявление

    Swift

    var presentationStyle: UIModalPresentationStyle { get }

    Objective C

    @property(nonatomic, readonly) UIModalPresentationStyle presentationStyle

    Обсуждение

    Это свойство установлено в стиль презентации представленного контроллера представления. Контроллер представления использует этот стиль для определения начального появления представленного содержания.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Когда представленный контроллер представления становится горизонтально компактным, возвращает стиль презентации для использования.

    Объявление

    Swift

    func adaptivePresentationStyle() -> UIModalPresentationStyle

    Objective C

    - (UIModalPresentationStyle)adaptivePresentationStyle

    Возвращаемое значение

    Значение, предоставленное делегатом контроллера представления или UIModalPresentationNone если делегату не были предоставлены или не возвращает допустимое значение.

    Обсуждение

    После того, как содержание, которым управляет контроллер представления, является экранным, этот метод возвращает стиль презентации для использования при переходе для горизонтально компактной среды. Реализация по умолчанию этого метода консультируется со своим объектом делегата и возвращает значение, предоставленное тем объектом adaptivePresentationStyleForPresentationController: метод. Некоторые предоставленные систему контроллеры представления могут также обеспечить новый стиль, больше подходящий для компактной среды. Например, контроллеры представления, управляющие легкой сдобой и листами формы, возвращаются UIModalPresentationFullScreen значение.

    Этот метод только возвращает стиль презентации для использования в горизонтально компактной среде. Это не инициирует переход к новому стилю. Когда класс размера фактически изменяется, система инициирует переход к новому стилю. При переходе к новому стилю может измениться фактический объект контроллера представления. В результате не кэшируйте объект контроллера представления в своем коде. Всегда получайте его от своего контроллера представления presentationController свойство.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Булево значение, указывающее, покрывает ли представление весь экран.

    Объявление

    Swift

    func shouldPresentInFullscreen() -> Bool

    Objective C

    - (BOOL)shouldPresentInFullscreen

    Возвращаемое значение

    YEStrue если представление покрывает экран или NOfalse если это покрывает все или часть контроллера текущего представления только.

    Обсуждение

    Реализация по умолчанию этого метода возвраты YEStrue, указание, что представление покрывает весь экран. Можно переопределить этот метод и возврат NOfalse вынудить представление вывести на экран только в текущем контексте.

    При переопределении этого метода не вызывать super.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Булево значение, указывающее, должно ли представление контроллера представления представления быть удалено, когда заканчиваются анимации представления.

    Объявление

    Swift

    func shouldRemovePresentersView() -> Bool

    Objective C

    - (BOOL)shouldRemovePresentersView

    Возвращаемое значение

    YEStrue если представление должно быть удалено или NOfalse если это не должно.

    Обсуждение

    Реализация по умолчанию этого метода возвраты NOfalse. Если Вы реализуете представление, не покрывающее представление, просматривают содержание контроллера полностью, переопределяют этот метод и возврат NOfalse.

    При переопределении этого метода не вызывать super.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • delegate Свойство

    Объект делегата для управления адаптивными представлениями.

    Объявление

    Swift

    unowned(unsafe) var delegate: UIAdaptivePresentationControllerDelegate?

    Objective C

    @property(nonatomic, assign) id< UIAdaptivePresentationControllerDelegate > delegate

    Обсуждение

    Когда размер приложения изменяется, работы контроллера представления с этим объектом делегата определить надлежащий ответ. Контроллеры представления представили использование UIModalPresentationFormSheet, UIModalPresentationPopover, или UIModalPresentationCustom стиль должен изменить на использование один из полноэкранных стилей презентации вместо этого. Делегат может также решить изменить представленный контроллер представления полностью.

    Объект, который Вы присваиваете этому свойству, должен соответствовать UIAdaptivePresentationControllerDelegate протокол.

    Оператор импорта

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

    Доступный в iOS 8.0 и позже.