Type Method

traitCollectionWithTraitsFromCollections:

Returns a new trait collection consisting of traits merged from a specified array of trait collections.

Declaration

+ (UITraitCollection *)traitCollectionWithTraitsFromCollections:(NSArray<UITraitCollection *> *)traitCollections;

Parameters

traitCollections

An array of UITraitCollection objects.

Return Value

A new trait collection consisting of traits merged from a specified traitCollections array.

Discussion

This method takes an array of one or more trait collections and merges them to create a new trait collection. If the array contains more than one element, the highest-indexed element that contains a given trait is used for that trait. For example, the following code snippet creates a trait collection with a compact horizontal size class, because the second element in the array overrides the first for that trait:

UITraitCollection *newHorizontalSizeClass1 = [UITraitCollection traitCollectionWithHorizontalSizeClass: UIUserInterfaceSizeClassRegular];
UITraitCollection *newHorizontalSizeClass2 = [UITraitCollection traitCollectionWithHorizontalSizeClass: UIUserInterfaceSizeClassCompact];
NSArray *traitArray = [NSArray arrayWithObjects: newHorizontalSizeClass1, newHorizontalSizeClass2, nil];
UITraitCollection *combinedTraits = [UITraitCollection traitCollectionWithTraitsFromCollections: traitArray];

See Also

Creating a Trait Collection

- init

Returns a new trait collection whose traits are set to their default (unspecified) values.

+ traitCollectionWithUserInterfaceIdiom:

Returns a new trait collection containing only a specified interface idiom.

+ traitCollectionWithHorizontalSizeClass:

Returns a new trait collection containing only a specified horizontal size class.

+ traitCollectionWithVerticalSizeClass:

Returns a new trait collection containing only a specified vertical size class.

+ traitCollectionWithUserInterfaceStyle:

Returns a new trait collection containing only the specified user interface style trait.

+ traitCollectionWithAccessibilityContrast:

Returns a new trait collection containing only the specified accessibility contrast trait.

+ traitCollectionWithUserInterfaceLevel:

Returns a new trait collection containing only the specified user interface level trait.

+ traitCollectionWithLegibilityWeight:

Returns a new trait collection containing only the specified legibility weight trait.

+ traitCollectionWithForceTouchCapability:

Creates a trait collection containing only a specified force touch capability trait.

+ traitCollectionWithDisplayScale:

Returns a new trait collection containing only a specified display scale.

+ traitCollectionWithDisplayGamut:

Returns a new trait collection containing only the specified display gamut trait.

+ traitCollectionWithLayoutDirection:

Returns a new trait collection containing only the specified layout direction trait.

+ traitCollectionWithPreferredContentSizeCategory:

Returns a new trait collection containing only the specified content size category trait.