<!--
{
  "availability" : [
    "iOS: 11.0.0 -",
    "iPadOS: 11.0.0 -",
    "macCatalyst: 13.1.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UITextDropDelegate",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:objc(pl)UITextDropDelegate"
  },
  "title" : "UITextDropDelegate"
}
-->

# UITextDropDelegate

The interface for configuring a text view’s drop behavior.

```
@MainActor protocol UITextDropDelegate : NSObjectProtocol
```

## Topics

### Accepting a drop activity

[`func textDroppableView(any UIView & UITextDroppable, proposalForDrop: any UITextDropRequest) -> UITextDropProposal`](/documentation/UIKit/UITextDropDelegate/textDroppableView(_:proposalForDrop:))

Asks the delegate if the text view can accept a drop operation.

[`func textDroppableView(any UIView & UITextDroppable, willBecomeEditableForDrop: any UITextDropRequest) -> UITextDropEditability`](/documentation/UIKit/UITextDropDelegate/textDroppableView(_:willBecomeEditableForDrop:))

Asks the delegate if a noneditable text view can accept a drop operation.

### Handling drop session notifications

[`func textDroppableView(any UIView & UITextDroppable, dropSessionDidEnter: any UIDropSession)`](/documentation/UIKit/UITextDropDelegate/textDroppableView(_:dropSessionDidEnter:))

Tells the delegate that the user has moved the drag items into the coordinate system of the text view.

[`func textDroppableView(any UIView & UITextDroppable, dropSessionDidExit: any UIDropSession)`](/documentation/UIKit/UITextDropDelegate/textDroppableView(_:dropSessionDidExit:))

Tells the delegate that the user has moved the drag items out of the text view’s coordinate system.

[`func textDroppableView(any UIView & UITextDroppable, dropSessionDidUpdate: any UIDropSession)`](/documentation/UIKit/UITextDropDelegate/textDroppableView(_:dropSessionDidUpdate:))

Tells the delegate that the drop session has been updated.

[`func textDroppableView(any UIView & UITextDroppable, dropSessionDidEnd: any UIDropSession)`](/documentation/UIKit/UITextDropDelegate/textDroppableView(_:dropSessionDidEnd:))

Tells the delegate that the drop session has ended.

### Handling drop activity notifications

[`func textDroppableView(any UIView & UITextDroppable, willPerformDrop: any UITextDropRequest)`](/documentation/UIKit/UITextDropDelegate/textDroppableView(_:willPerformDrop:))

Tells the delegate that the drop operation is about to happen.

### Providing a custom preview for a drop activity

[`func textDroppableView(any UIView & UITextDroppable, previewForDroppingAllItemsWithDefault: UITargetedDragPreview) -> UITargetedDragPreview?`](/documentation/UIKit/UITextDropDelegate/textDroppableView(_:previewForDroppingAllItemsWithDefault:))

Asks the delegate for the preview to show during the drop animation.

## Relationships

### Inherits From

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)