setOverrideTraitCollection(_:forChild:)
Changes the traits assigned to the specified child view controller.
Declaration
func setOverrideTraitCollection(_ collection: UITraitCollection?, forChild childViewController: UIViewController)Parameters
- collection:
The new traits to apply to the child view controller.
- childViewController:
The child view controller whose trait collection is to be changed.
Mentioned in
Discussion
Usually, traits are passed unmodified from the parent view controller to its child view controllers. When implementing a custom container view controller, you can use this method to change the traits of any embedded child view controllers to something more appropriate for your layout. Making such a change alters other view controller behaviors associated with that child. For example, modal presentations behave differently in a horizontally compact versus horizontally regular environment. You might also make such a change to force the same set of traits on the child view controller regardless of the actual trait environment.
See Also
Deprecated methods
overrideTraitCollection(forChild:)attemptRotationToDeviceOrientation()registerForPreviewing(with:sourceView:)unregisterForPreviewing(withContext:)canPerformUnwindSegueAction(_:from:withSender:)didRotate(from:)dismissMoviePlayerViewControllerAnimated()forUnwindSegueAction(_:from:withSender:)presentMoviePlayerViewControllerAnimated(_:)rotatingFooterView()rotatingHeaderView()segueForUnwinding(to:from:identifier:)shouldAutomaticallyForwardRotationMethods()willAnimateRotation(to:duration:)willRotate(to:duration:)