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

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

Разработчик

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

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

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

UITraitEnvironment

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


Не применимый

Соответствует


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


Swift

import UIKit

Objective C

@import UIKit;

Доступность


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

iOS соединяет интерфейсом со средой, включающей такие черты как горизонтальный и вертикальный класс размера, масштаб дисплея и идиома пользовательского интерфейса, доступны приложениям через UITraitEnvironment протокол. Следующие интерфейсные классы принимают этот протокол: UIScreen, UIWindow, UIViewController, UIPresentationController, и UIView.

Для доступа к среде черты объекта, принимающего этот протокол используйте traitCollection свойство. Протокол также обеспечивает переопределяемый метод что системные вызовы когда интерфейсные изменения среды. Реализуйте этот метод как часть создания адаптивного приложения для iOS.

Для больше о наборах черты, посмотрите Ссылку класса UITraitCollection. Для представления 2014 года WWDC создания адаптивных интерфейсов в iOS см. Создающие Адаптивные Приложения с UIKit.

  • traitCollection Свойство

    Набор черты для контроллера представления (экземпляр UIViewController класс или один из его подклассов) или представление (экземпляр UIView класс или один из его подклассов). (требуемый) (только для чтения)

    Объявление

    Swift

    var traitCollection: UITraitCollection { get }

    Objective C

    @property(nonatomic, readonly) UITraitCollection *traitCollection

    Обсуждение

    UITraitEnvironment протокол принят контроллерами представления и представлениями.

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

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

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

  • Вызванный, когда iOS соединяет интерфейсом с изменениями среды. (требуемый)

    Объявление

    Swift

    func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?)

    Objective C

    - (void)traitCollectionDidChange:(UITraitCollection *)previousTraitCollection

    Параметры

    previousTraitCollection

    UITraitCollection объект перед интерфейсной средой изменился.

    Обсуждение

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

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

    • - (void) traitCollectionDidChange: (UITraitCollection *) previousTraitCollection {
    • [super traitCollectionDidChange: previousTraitCollection];
    • if ((self.traitCollection.verticalSizeClass != previousTraitCollection.verticalSizeClass)
    • || self.traitCollection.horizontalSizeClass != previousTraitCollection.horizontalSizeClass)) {
    • // your custom implementation here
    • }
    • }

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

    Objective C

    @import UIKit;

    Swift

    import UIKit

    Доступность

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