---
title: UIControl.Event
framework: uikit
role: symbol
role_heading: Structure
path: uikit/uicontrol/event
---

# UIControl.Event

Constants describing the types of events possible for controls.

## Declaration

```swift
struct Event
```

## Mentioned in

Responding to control-based events using target-action

## Overview

Overview You set up a control so that it sends an action message to a target object by associating both target and action with one or more control events. To do this, send addTarget(_:action:for:) to the control for each target-action pair you want to specify.

## Topics

### Constants

- [touchDown](uikit/uicontrol/event/touchdown.md)
- [touchDownRepeat](uikit/uicontrol/event/touchdownrepeat.md)
- [touchDragInside](uikit/uicontrol/event/touchdraginside.md)
- [touchDragOutside](uikit/uicontrol/event/touchdragoutside.md)
- [touchDragEnter](uikit/uicontrol/event/touchdragenter.md)
- [touchDragExit](uikit/uicontrol/event/touchdragexit.md)
- [touchUpInside](uikit/uicontrol/event/touchupinside.md)
- [touchUpOutside](uikit/uicontrol/event/touchupoutside.md)
- [touchCancel](uikit/uicontrol/event/touchcancel.md)
- [valueChanged](uikit/uicontrol/event/valuechanged.md)
- [menuActionTriggered](uikit/uicontrol/event/menuactiontriggered.md)
- [primaryActionTriggered](uikit/uicontrol/event/primaryactiontriggered.md)
- [editingDidBegin](uikit/uicontrol/event/editingdidbegin.md)
- [editingChanged](uikit/uicontrol/event/editingchanged.md)
- [editingDidEnd](uikit/uicontrol/event/editingdidend.md)
- [editingDidEndOnExit](uikit/uicontrol/event/editingdidendonexit.md)
- [allTouchEvents](uikit/uicontrol/event/alltouchevents.md)
- [allEditingEvents](uikit/uicontrol/event/alleditingevents.md)
- [applicationReserved](uikit/uicontrol/event/applicationreserved.md)
- [systemReserved](uikit/uicontrol/event/systemreserved.md)
- [allEvents](uikit/uicontrol/event/allevents.md)

### Initializers

- [init(rawValue:)](uikit/uicontrol/event/init(rawvalue:).md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Equatable](swift/equatable.md)
- [ExpressibleByArrayLiteral](swift/expressiblebyarrayliteral.md)
- [OptionSet](swift/optionset.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
- [SetAlgebra](swift/setalgebra.md)

## See Also

### Managing the control’s targets and actions

- [addTarget(_:action:for:)](uikit/uicontrol/addtarget(_:action:for:).md)
- [removeTarget(_:action:for:)](uikit/uicontrol/removetarget(_:action:for:).md)
- [allTargets](uikit/uicontrol/alltargets.md)
- [addAction(_:for:)](uikit/uicontrol/addaction(_:for:).md)
- [removeAction(_:for:)](uikit/uicontrol/removeaction(_:for:).md)
- [removeAction(identifiedBy:for:)](uikit/uicontrol/removeaction(identifiedby:for:).md)
- [actions(forTarget:forControlEvent:)](uikit/uicontrol/actions(fortarget:forcontrolevent:).md)
- [allControlEvents](uikit/uicontrol/allcontrolevents.md)
- [enumerateEventHandlers(_:)](uikit/uicontrol/enumerateeventhandlers(_:).md)
