One Logo Pool Ball
UIKit · IOS API REFERENCE

UIPresentationController

class · iOS 8.0+ · SDK 27.1

@MainActor class UIPresentationController

Members (26)

method · iOS 8.3+

adaptivePresentationStyle

TypeScript
adaptivePresentationStyleFor(traitCollection: UITraitCollection): Promise<UIModalPresentationStyle>
Swift declaration
func adaptivePresentationStyle(for traitCollection: UITraitCollection) -> UIModalPresentationStyle
method · iOS 8.0+

containerViewDidLayoutSubviews

TypeScript
containerViewDidLayoutSubviews(): Promise<void>
Swift declaration
func containerViewDidLayoutSubviews()
method · iOS 8.0+

containerViewWillLayoutSubviews

TypeScript
containerViewWillLayoutSubviews(): Promise<void>
Swift declaration
func containerViewWillLayoutSubviews()
method · iOS 8.0+

dismissalTransitionDidEnd

TypeScript
dismissalTransitionDidEnd(completed: boolean): Promise<void>
Swift declaration
func dismissalTransitionDidEnd(_ completed: Bool)
method · iOS 8.0+

dismissalTransitionWillBegin

TypeScript
dismissalTransitionWillBegin(): Promise<void>
Swift declaration
func dismissalTransitionWillBegin()
init · iOS 8.0+

init

TypeScript
static init(presentedViewController: UIViewController, presentingViewController?: (UIViewController) | null): Promise<UIPresentationController>
Swift declaration
init(presentedViewController: UIViewController, presenting presentingViewController: UIViewController?)
method · iOS 8.0+

presentationTransitionDidEnd

TypeScript
presentationTransitionDidEnd(completed: boolean): Promise<void>
Swift declaration
func presentationTransitionDidEnd(_ completed: Bool)
method · iOS 8.0+

presentationTransitionWillBegin

TypeScript
presentationTransitionWillBegin(): Promise<void>
Swift declaration
func presentationTransitionWillBegin()
get · iOS 8.0+

adaptivePresentationStyle

TypeScript
get adaptivePresentationStyle(): Promise<UIModalPresentationStyle>
Swift declaration
var adaptivePresentationStyle: UIModalPresentationStyle { get }
get · iOS 26.1+

backgroundEffect

TypeScript
get backgroundEffect(): Promise<(UIVisualEffect) | null>
Swift declaration
var backgroundEffect: UIVisualEffect? { get set }
set · iOS 26.1+

backgroundEffect

TypeScript
setBackgroundEffect(value?: (UIVisualEffect) | null): Promise<void>
Swift declaration
var backgroundEffect: UIVisualEffect? { get set }
get · iOS 8.0+

containerView

TypeScript
get containerView(): Promise<(UIView) | null>
Swift declaration
var containerView: UIView? { get }
get · iOS 8.0+

delegate

TypeScript
get delegate(): Promise<(SDKHandle) | null>
Swift declaration
weak var delegate: (any UIAdaptivePresentationControllerDelegate)? { get set }
set · iOS 8.0+

delegate

TypeScript
setDelegate(value?: (Implements<UIAdaptivePresentationControllerDelegate> | SDKHandle) | null): Promise<void>
Swift declaration
weak var delegate: (any UIAdaptivePresentationControllerDelegate)? { get set }
get · iOS 8.0+

frameOfPresentedViewInContainerView

TypeScript
get frameOfPresentedViewInContainerView(): Promise<{ x: number; y: number; width: number; height: number }>
Swift declaration
var frameOfPresentedViewInContainerView: CGRect { get }
get · iOS 8.0+ · Deprecated in iOS 17.0

overrideTraitCollection

TypeScript
get overrideTraitCollection(): Promise<(UITraitCollection) | null>
Swift declaration
@NSCopying var overrideTraitCollection: UITraitCollection? { get set }
set · iOS 8.0+ · Deprecated in iOS 17.0

overrideTraitCollection

TypeScript
setOverrideTraitCollection(value?: (UITraitCollection) | null): Promise<void>
Swift declaration
@NSCopying var overrideTraitCollection: UITraitCollection? { get set }
get · iOS 8.0+

presentationStyle

TypeScript
get presentationStyle(): Promise<UIModalPresentationStyle>
Swift declaration
var presentationStyle: UIModalPresentationStyle { get }
get · iOS 8.0+

presentedView

TypeScript
get presentedView(): Promise<(UIView) | null>
Swift declaration
var presentedView: UIView? { get }
get · iOS 8.0+

presentedViewController

TypeScript
get presentedViewController(): Promise<UIViewController>
Swift declaration
var presentedViewController: UIViewController { get }
get · iOS 8.0+

presentingViewController

TypeScript
get presentingViewController(): Promise<UIViewController>
Swift declaration
var presentingViewController: UIViewController { get }
get · iOS 8.0+

shouldPresentInFullscreen

TypeScript
get shouldPresentInFullscreen(): Promise<boolean>
Swift declaration
var shouldPresentInFullscreen: Bool { get }
get · iOS 8.0+

shouldRemovePresentersView

TypeScript
get shouldRemovePresentersView(): Promise<boolean>
Swift declaration
var shouldRemovePresentersView: Bool { get }
get · iOS 17.0+

traitOverrides

TypeScript
get traitOverrides(): Promise<UITraitOverrides>
Swift declaration
@MainActor @preconcurrency var traitOverrides: UITraitOverrides { get set }
set · iOS 17.0+

traitOverrides

TypeScript
setTraitOverrides(value: UITraitOverrides): Promise<void>
Swift declaration
@MainActor @preconcurrency var traitOverrides: UITraitOverrides { get set }
method · iOS 17.0+

unregisterForTraitChanges

TypeScript
unregisterForTraitChanges(registration: SDKHandle): Promise<void>
Swift declaration
@MainActor func unregisterForTraitChanges(_ registration: any UITraitChangeRegistration)

Skipped declarations

4 declarations were excluded from these bindings. Each reason comes from the generator or the iOS SDK compiler.

UIPresentationController.registerForTraitChanges(_:handler:)

Passing a Swift type itself is not supported.

UIPresentationController.registerForTraitChanges(_:target:action:)

Passing a Swift type itself is not supported.

UIPresentationController.registerForTraitChanges(_:action:)

Passing a Swift type itself is not supported.

UIPresentationController.init()

inherited init: cannot prove legal (class declares 2 custom initializers)

All UIKit types →