UITraitCollection
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCoding -
NSCopying -
NSObjectProtocol -
NSSecureCoding -
Печатаемый -
NSCopying -
NSObject -
NSSecureCoding
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 8.0 и позже.
Набор черты описывает среду интерфейса iOS для Вашего приложения, включая черты, такие как горизонтальный и вертикальный класс размера, масштаб дисплея и идиома пользовательского интерфейса. Для создания адаптивного интерфейса запишите код для корректировки расположения приложения согласно изменениям в этих чертах.
Среда черты iOS представлена хотя traitCollection свойство UITraitEnvironment протокол. Этот протокол принят следующими классами: UIScreen, UIWindow, UIViewController, UIPresentationController, и UIView. Вы получаете доступ к определенным значениям черты с помощью UITraitCollection horizontalSizeClass, verticalSizeClass, displayScale, и userInterfaceIdiom свойства. Значения, что явно выраженная идиома и черты размера определяются в UIUserInterfaceIdiom и UIUserInterfaceSizeClass перечисления; значение для черты масштаба дисплея выражено как число с плавающей точкой.
Для создания контроллеров представления и представлений быстро реагирующими к изменениям в среде интерфейса iOS переопределите traitCollectionDidChange: метод из протокола среды черты. Для настройки анимаций контроллера представления в ответ на интерфейсные изменения среды переопределите willTransitionToTraitCollection:withTransitionCoordinator: метод UIContentContainer протокол.
Можно создать автономные наборы черты для помощи в соответствии против определенных сред. UITraitCollection класс включает четырех специализированных конструкторов, а также конструктора, позволяющего Вам объединить массив наборов черты, traitCollectionWithTraitsFromCollections:.
Одно важное использование автономных наборов черты должно включить условное использование изображений на основе текущей среды интерфейса iOS. Можно связать набор черты с a UIImage экземпляр посредством a UIImageAsset экземпляр, как описано в разделе обзора Ссылки класса UIImageAsset. Для получения информации о конфигурировании каталогов актива графически из XCode IDE, посмотрите Справку Каталога Актива.
Можно использовать автономный набор черты для включения представления разделения на два столбца в альбомной ориентации на iPhone. Посмотрите setOverrideTraitCollection:forChildViewController: метод UIViewController класс.
Автономный набор черты также полезен в настройке появления представления, посредством appearanceForTraitCollection: метод протокола, как описано в Ссылке на протокол UIAppearance.
Для представления 2014 года WWDC создания адаптивных интерфейсов в iOS см. Создающие Адаптивные Приложения с UIKit.
-
Возвращает новый набор черты, состоящий из черт, объединенных от указанного массива наборов черты.
Объявление
Swift
init(traitsFromCollectionstraitCollections: [AnyObject]) -> UITraitCollectionObjective C
+ (UITraitCollection *)traitCollectionWithTraitsFromCollections:(NSArray *)traitCollectionsПараметры
traitCollectionsМассив
UITraitCollectionобъекты.Возвращаемое значение
Новый набор черты, состоящий из черт, объединился от указанного
traitCollectionsмассив.Обсуждение
Этот метод берет массив одного или более наборов черты и объединяет их для создания нового набора черты. Если массив содержит больше чем один элемент, индексированный самым высоким образом элемент, содержащий данную черту, используется для той черты. Например, следующий фрагмент кода создает набор черты с компактным горизонтальным классом размера, потому что второй элемент в массиве переопределяет первое для той черты:
UITraitCollection *newHorizontalSizeClass1 = [UITraitCollection traitCollectionWithHorizontalSizeClass: UIUserInterfaceSizeClassRegular];UITraitCollection *newHorizontalSizeClass2 = [UITraitCollection traitCollectionWithHorizontalSizeClass: UIUserInterfaceSizeClassCompact];NSArray *traitArray = [NSArray arrayWithObjects: newHorizontalSizeClass1, newHorizontalSizeClass2, nil];UITraitCollection *combinedTraits = [UITraitCollection traitCollectionWithTraitsFromCollections: traitArray];
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Возвращает новый набор черты, содержащий только указанный масштаб дисплея.
Объявление
Swift
init(displayScalescale: CGFloat) -> UITraitCollectionObjective C
+ (UITraitCollection *)traitCollectionWithDisplayScale:(CGFloat)scaleПараметры
scaleМасштаб дисплея для нового набора черты. Использовать
1.0для указания несетчатки выводят на экран масштаб и значение2.0или больше указать Сетчатку выводят на экран масштаб.Возвращаемое значение
Новый набор черты, содержащий только указанный дисплей, масштабирует черту.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Возвращает новый набор черты, содержащий только указанную интерфейсную идиому.
Объявление
Swift
init(userInterfaceIdiomidiom: UIUserInterfaceIdiom) -> UITraitCollectionObjective C
+ (UITraitCollection *)traitCollectionWithUserInterfaceIdiom:(UIUserInterfaceIdiom)idiomПараметры
idiomA
UIUserInterfaceIdiomзначение, указывающее идиому пользовательского интерфейса для нового набора черты.Возвращаемое значение
Новый набор черты, содержащий только указанную черту идиомы пользовательского интерфейса.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Возвращает новый набор черты, содержащий только указанный горизонтальный класс размера.
Объявление
Swift
init(horizontalSizeClasshorizontalSizeClass: UIUserInterfaceSizeClass) -> UITraitCollectionObjective C
+ (UITraitCollection *)traitCollectionWithHorizontalSizeClass:(UIUserInterfaceSizeClass)horizontalSizeClassПараметры
horizontalSizeClassA
UIUserInterfaceSizeClassзначение, указывающее горизонтальный класс размера для нового набора черты.Возвращаемое значение
Новый набор черты, содержащий только указанную горизонтальную черту класса размера.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Возвращает новый набор черты, содержащий только указанный вертикальный класс размера.
Объявление
Swift
init(verticalSizeClassverticalSizeClass: UIUserInterfaceSizeClass) -> UITraitCollectionObjective C
+ (UITraitCollection *)traitCollectionWithVerticalSizeClass:(UIUserInterfaceSizeClass)verticalSizeClassПараметры
verticalSizeClassA
UIUserInterfaceSizeClassзначение, указывающее вертикальный класс размера для нового набора черты.Возвращаемое значение
Новый набор черты, содержащий только указанную вертикальную черту класса размера.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
displayScaleСвойствоМасштаб дисплея набора черты. (только для чтения)
Объявление
Swift
var displayScale: CGFloat { get }Objective C
@property(nonatomic, readonly) CGFloat displayScaleОбсуждение
Значение
1.0указывает дисплей несетчатки и значение2.0указывает дисплей Сетчатки. Масштаб дисплея по умолчанию для набора черты0.0(указание неуказанного).Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
horizontalSizeClassСвойствоГоризонтальный класс размера набора черты. (только для чтения)
Объявление
Swift
var horizontalSizeClass: UIUserInterfaceSizeClass { get }Objective C
@property(nonatomic, readonly) UIUserInterfaceSizeClass horizontalSizeClassОбсуждение
Горизонтальный класс размера по умолчанию для набора черты
UIUserInterfaceSizeClassUnspecified.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
userInterfaceIdiomСвойствоИдиома пользовательского интерфейса набора черты. (только для чтения)
Объявление
Swift
var userInterfaceIdiom: UIUserInterfaceIdiom { get }Objective C
@property(nonatomic, readonly) UIUserInterfaceIdiom userInterfaceIdiomОбсуждение
Идиома пользовательского интерфейса по умолчанию для набора черты
UIUserInterfaceIdiomUnspecified.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
verticalSizeClassСвойствоВертикальный класс размера набора черты. (только для чтения)
Объявление
Swift
var verticalSizeClass: UIUserInterfaceSizeClass { get }Objective C
@property(nonatomic, readonly) UIUserInterfaceSizeClass verticalSizeClassОбсуждение
Вертикальный класс размера по умолчанию для набора черты
UIUserInterfaceSizeClassUnspecified.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Возвращает булево значение, указывающее, содержит ли набор черты всю другую черту значения набора.
Объявление
Swift
func containsTraitsInCollection(_trait: UITraitCollection!) -> BoolObjective C
- (BOOL)containsTraitsInCollection:(UITraitCollection *)traitПараметры
traitНабор черты, который Вы хотите сравнить с набором черты получателя.
Возвращаемое значение
Этот метод возвраты
YEStrueесли получатель содержит все значения черты в наборе черты, переданном вtraitпараметр и возвратыNOfalseиначе.Обсуждение
Используйте этот метод для сравнения двух автономных наборов черты, или сравнить iOS соединяют интерфейсом с набором черты среды к автономному набору черты.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
