---
title: UIWindowSceneDelegate
framework: uikit
role: symbol
role_heading: Protocol
path: uikit/uiwindowscenedelegate
---

# UIWindowSceneDelegate

Additional methods that you use to manage app-specific tasks occurring in a scene.

## Declaration

```swift
@MainActor protocol UIWindowSceneDelegate : UISceneDelegate
```

## Mentioned in

Transitioning to the UIKit scene-based life cycle Specifying the scenes your app supports

## Overview

Overview Use your UIWindowSceneDelegate object to manage the life cycle of one instance of your app’s user interface. The window scene delegate conforms to the UISceneDelegate protocol, and you use it to receive notifications when its scene connects to the app, enters the foreground, and so on. You also use it to respond to changes in the underlying environment of the scene. For example, if the user resizes a scene, use your delegate to make any needed changes to your content to accommodate the new size. Don’t create UIWindowSceneDelegate objects directly. Instead, specify the name of your delegate class as part of the configuration data for your scene. You can specify this information in your app’s Info.plist file, or in the UISceneConfiguration object you return from your app delegate’s application(_:configurationForConnecting:options:) method. For more information about how to configure scenes, see Specifying the scenes your app supports. For an example on using UIWindowSceneDelegate in your app, see Supporting multiple windows on iPad.

## Topics

### Managing the scene’s main window

- [window](uikit/uiwindowscenedelegate/window.md)

### Responding to scene changes

- [windowScene(_:didUpdateEffectiveGeometry:)](uikit/uiwindowscenedelegate/windowscene(_:didupdateeffectivegeometry:).md)

### Performing tasks

- [windowScene(_:performActionFor:completionHandler:)](uikit/uiwindowscenedelegate/windowscene(_:performactionfor:completionhandler:).md)
- [windowScene(_:userDidAcceptCloudKitShareWith:)](uikit/uiwindowscenedelegate/windowscene(_:userdidacceptcloudkitsharewith:).md)

### Configuring supported interface orientations

- [supportedInterfaceOrientations(for:)](uikit/uiwindowscenedelegate/supportedinterfaceorientations(for:).md)

### Deprecated methods

- [windowScene(_:didUpdate:interfaceOrientation:traitCollection:)](uikit/uiwindowscenedelegate/windowscene(_:didupdate:interfaceorientation:traitcollection:).md)

### Instance Methods

- [preferredWindowingControlStyle(for:)](uikit/uiwindowscenedelegate/preferredwindowingcontrolstyle(for:).md)

## Relationships

### Inherits From

- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [UISceneDelegate](uikit/uiscenedelegate.md)

## See Also

### Window scenes

- [Supporting multiple windows on iPad](uikit/supporting-multiple-windows-on-ipad.md)
- [UIWindowScene](uikit/uiwindowscene.md)
- [UIScene](uikit/uiscene.md)
- [UISceneDelegate](uikit/uiscenedelegate.md)
