---
title: "dragInteraction(_:sessionWillBegin:)"
framework: uikit
role: symbol
role_heading: Instance Method
path: "uikit/uidraginteractiondelegate/draginteraction(_:sessionwillbegin:)"
---

# dragInteraction(_:sessionWillBegin:)

Tells the delegate the lift animation has finished and the user is starting to move the items across the screen.

## Declaration

```swift
optional func dragInteraction(_ interaction: UIDragInteraction, sessionWillBegin session: any UIDragSession)
```

## Parameters

- `interaction`: The interaction that called this method.
- `session`: The current drag session.

## Discussion

Discussion Implement this method when you need to perform some action after the user starts dragging the items; for instance, dimming the view to show that its contents are being dragged.

## See Also

### Monitoring drag progress

- [dragInteraction(_:session:willAdd:for:)](uikit/uidraginteractiondelegate/draginteraction(_:session:willadd:for:).md)
- [dragInteraction(_:sessionDidMove:)](uikit/uidraginteractiondelegate/draginteraction(_:sessiondidmove:).md)
- [dragInteraction(_:session:willEndWith:)](uikit/uidraginteractiondelegate/draginteraction(_:session:willendwith:).md)
- [dragInteraction(_:session:didEndWith:)](uikit/uidraginteractiondelegate/draginteraction(_:session:didendwith:).md)
- [dragInteraction(_:sessionDidTransferItems:)](uikit/uidraginteractiondelegate/draginteraction(_:sessiondidtransferitems:).md)
