---
title: AVExperienceController.Delegate
framework: avkit
role: symbol
role_heading: Protocol
path: avkit/avexperiencecontroller/delegate-swift.protocol
---

# AVExperienceController.Delegate

A protocol that defines the methods to implement to respond to experience changes.

## Declaration

```swift
@MainActor protocol Delegate : AnyObject
```

## Overview

Overview Use this delegate to be informed of transitions and to update applications state based on these changes.

## Topics

### Responding to experience changes

- [experienceController(_:didChangeAvailableExperiences:)](avkit/avexperiencecontroller/delegate-swift.protocol/experiencecontroller(_:didchangeavailableexperiences:).md)
- [experienceController(_:prepareForTransitionUsing:)](avkit/avexperiencecontroller/delegate-swift.protocol/experiencecontroller(_:preparefortransitionusing:).md)
- [experienceController(_:didChangeTransitionContext:)](avkit/avexperiencecontroller/delegate-swift.protocol/experiencecontroller(_:didchangetransitioncontext:).md)
- [AVExperienceController.TransitionContext](avkit/avexperiencecontroller/transitioncontext.md)

## See Also

### Configuring a delegate

- [delegate](avkit/avexperiencecontroller/delegate-swift.property.md)
