---
title: controlsDelegate
framework: avfoundation
role: symbol
role_heading: Instance Property
path: avfoundation/avcapturesession/controlsdelegate
---

# controlsDelegate

A delegate object that observes changes to the state of capture controls.

## Declaration

```swift
var controlsDelegate: (any AVCaptureSessionControlsDelegate)? { get }
```

## Discussion

Discussion Call the setControlsDelegate(_:queue:) method to set the controls delegate for a session. important: You must specify a controls delegate for controls to become active.

## See Also

### Configuring capture controls

- [supportsControls](avfoundation/avcapturesession/supportscontrols.md)
- [maxControlsCount](avfoundation/avcapturesession/maxcontrolscount.md)
- [controls](avfoundation/avcapturesession/controls.md)
- [canAddControl(_:)](avfoundation/avcapturesession/canaddcontrol(_:).md)
- [addControl(_:)](avfoundation/avcapturesession/addcontrol(_:).md)
- [removeControl(_:)](avfoundation/avcapturesession/removecontrol(_:).md)
- [setControlsDelegate(_:queue:)](avfoundation/avcapturesession/setcontrolsdelegate(_:queue:).md)
- [AVCaptureSessionControlsDelegate](avfoundation/avcapturesessioncontrolsdelegate.md)
- [controlsDelegateCallbackQueue](avfoundation/avcapturesession/controlsdelegatecallbackqueue.md)
