---
title: UIDragInteraction
framework: uikit
role: symbol
role_heading: Class
path: uikit/uidraginteraction
---

# UIDragInteraction

An interaction to enable dragging of items from a view, employing a delegate to provide drag items and to respond to calls from the drag session.

## Declaration

```swift
@MainActor class UIDragInteraction
```

## Mentioned in

Making a view into a drag source

## Topics

### Initializing the drag interaction

- [init(delegate:)](uikit/uidraginteraction/init(delegate:).md)

### Configuring lift behavior

- [liftBehavior](uikit/uidraginteraction/liftbehavior-swift.property.md)
- [UIDragInteraction.LiftBehavior](uikit/uidraginteraction/liftbehavior-swift.enum.md)
- [allowsPointerDragBeforeLiftDelay](uikit/uidraginteraction/allowspointerdragbeforeliftdelay.md)

### Managing drag interactions

- [allowsSimultaneousRecognitionDuringLift](uikit/uidraginteraction/allowssimultaneousrecognitionduringlift.md)
- [delegate](uikit/uidraginteraction/delegate.md)
- [UIDragInteractionDelegate](uikit/uidraginteractiondelegate.md)

### Enabling the interactions

- [isEnabled](uikit/uidraginteraction/isenabled.md)
- [isEnabledByDefault](uikit/uidraginteraction/isenabledbydefault.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [Sendable](swift/sendable.md)
- [UIInteraction](uikit/uiinteraction.md)

## See Also

### Drag and drop interactions

- [UIDragInteractionDelegate](uikit/uidraginteractiondelegate.md)
- [UIDropInteractionDelegate](uikit/uidropinteractiondelegate.md)
- [UIDropInteraction](uikit/uidropinteraction.md)
