One Logo Pool Ball
UIKit · IOS API REFERENCE

UIWindowScene

class · iOS 13.0+ · SDK 27.1

@MainActor class UIWindowScene

Members (22)

method · iOS 16.0+

requestGeometryUpdate

TypeScript
requestGeometryUpdate(geometryPreferences: UIWindowScene_GeometryPreferences, errorHandler?: (((arg0: NativeError) => void)) | null): Promise<void>
Swift declaration
func requestGeometryUpdate(_ geometryPreferences: UIWindowScene.GeometryPreferences, errorHandler: ((any Error) -> Void)? = nil)
get · iOS 15.0+

activityItemsConfigurationSource

TypeScript
get activityItemsConfigurationSource(): Promise<(SDKHandle) | null>
Swift declaration
weak var activityItemsConfigurationSource: (any UIActivityItemsConfigurationProviding)? { get set }
set · iOS 15.0+

activityItemsConfigurationSource

TypeScript
setActivityItemsConfigurationSource(value?: (SDKHandle) | null): Promise<void>
Swift declaration
weak var activityItemsConfigurationSource: (any UIActivityItemsConfigurationProviding)? { get set }
get · iOS 27.0+

closureConfirmation

TypeScript
get closureConfirmation(): Promise<(UISceneClosureConfirmation) | null>
Swift declaration
@NSCopying var closureConfirmation: UISceneClosureConfirmation? { get set }
set · iOS 27.0+

closureConfirmation

TypeScript
setClosureConfirmation(value?: (UISceneClosureConfirmation) | null): Promise<void>
Swift declaration
@NSCopying var closureConfirmation: UISceneClosureConfirmation? { get set }
get · iOS 13.0+ · Deprecated in iOS 26.0

coordinateSpace

TypeScript
get coordinateSpace(): Promise<SDKHandle>
Swift declaration
var coordinateSpace: any UICoordinateSpace { get }
get · iOS 16.0+

effectiveGeometry

TypeScript
get effectiveGeometry(): Promise<UIWindowScene_Geometry>
Swift declaration
var effectiveGeometry: UIWindowScene.Geometry { get }
get · iOS 15.0+

focusSystem

TypeScript
get focusSystem(): Promise<(UIFocusSystem) | null>
Swift declaration
var focusSystem: UIFocusSystem? { get }
get · iOS 13.0+

isFullScreen

TypeScript
get isFullScreen(): Promise<boolean>
Swift declaration
var isFullScreen: Bool { get }
get · iOS 13.0+ · Deprecated in iOS 26.0

interfaceOrientation

TypeScript
get interfaceOrientation(): Promise<UIInterfaceOrientation>
Swift declaration
var interfaceOrientation: UIInterfaceOrientation { get }
get · iOS 15.0+

keyWindow

TypeScript
get keyWindow(): Promise<(UIWindow) | null>
Swift declaration
var keyWindow: UIWindow? { get }
get · iOS 13.0+

screen

TypeScript
get screen(): Promise<UIScreen>
Swift declaration
var screen: UIScreen { get }
get · iOS 13.0+

screenshotService

TypeScript
get screenshotService(): Promise<(UIScreenshotService) | null>
Swift declaration
var screenshotService: UIScreenshotService? { get }
get · iOS 13.0+

sizeRestrictions

TypeScript
get sizeRestrictions(): Promise<(UISceneSizeRestrictions) | null>
Swift declaration
var sizeRestrictions: UISceneSizeRestrictions? { get }
get · iOS 13.0+

statusBarManager

TypeScript
get statusBarManager(): Promise<(UIStatusBarManager) | null>
Swift declaration
var statusBarManager: UIStatusBarManager? { get }
get · iOS 13.0+

traitCollection

TypeScript
get traitCollection(): Promise<UITraitCollection>
Swift declaration
var traitCollection: UITraitCollection { get }
get · iOS 16.0+

windowingBehaviors

TypeScript
get windowingBehaviors(): Promise<(UISceneWindowingBehaviors) | null>
Swift declaration
var windowingBehaviors: UISceneWindowingBehaviors? { get }
get · iOS 13.0+

windows

TypeScript
get windows(): Promise<Array<UIWindow>>
Swift declaration
var windows: [UIWindow] { get }
method · iOS 27.0+

displayLink

TypeScript
displayLink(action: ((arg0: _QuartzCore_CADisplayLink) => void)): Promise<(_QuartzCore_CADisplayLink) | null>
Swift declaration
@MainActor @preconcurrency func displayLink(action: @escaping @Sendable (CADisplayLink) -> Void) -> CADisplayLink?
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

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

UIWindowScene.registerForTraitChanges(_:handler:)

Passing a Swift type itself is not supported.

UIWindowScene.registerForTraitChanges(_:target:action:)

Passing a Swift type itself is not supported.

UIWindowScene.registerForTraitChanges(_:action:)

Passing a Swift type itself is not supported.

UIWindowScene.displayLink(target:selector:)

Objective-C selectors cannot cross the bridge.

UIWindowScene.init()

inherited init: clang: 'init' is unavailable

All UIKit types →