<!--
{
  "availability" : [
    "iOS: 16.0.0 -",
    "iPadOS: 16.0.0 -",
    "macCatalyst: 16.0.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UIDocumentProperties",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:objc(cs)UIDocumentProperties"
  },
  "title" : "UIDocumentProperties"
}
-->

# UIDocumentProperties

Information that UIKit uses to generate a document header for a navigation item’s title menu.

```
@MainActor class UIDocumentProperties
```

## Overview

Assign a [`UIDocumentProperties`](/documentation/UIKit/UIDocumentProperties) object to your navigation item’s [`documentProperties`](/documentation/UIKit/UINavigationItem/documentProperties) property. UIKit uses this object to display a document header at the top of the title menu, which appears when a person taps the navigation item’s title. The document header displays information about the current document, such as its title, file type, and size.

![Title menu with a document header that contains a document preview, a Share button, and the text New Document, Text Document, 1 byte.](images/com.apple.uikit/media-3975665@2x.png)

Additionally, you can configure a set of sharing capabilities that allow people to share or drag and drop the document content from the document header:

- Set an [`activityViewControllerProvider`](/documentation/UIKit/UIDocumentProperties/activityViewControllerProvider) to show the Share button.
- Set a [`dragItemsProvider`](/documentation/UIKit/UIDocumentProperties/dragItemsProvider) to allow people to drag and drop the document by dragging the preview icon.

> Related Sessions from WWDC22:
> Session 10069: [Meet desktop-class iPad](https://developer.apple.com/wwdc22/10069)
> 
> Session 10070: [Build a desktop-class iPad app](https://developer.apple.com/wwdc22/10070)

## Topics

### Creating a document header

[`init(url:)`](/documentation/UIKit/UIDocumentProperties/init(url:)-zeio)

Creates a document properties object from document data at the URL you specify.

[`init(metadata:)`](/documentation/UIKit/UIDocumentProperties/init(metadata:))

Creates a document properties object from the metadata object you specify.

[`metadata`](/documentation/UIKit/UIDocumentProperties/metadata)

The document’s metadata.

### Generating a document preview

[`wantsIconRepresentation`](/documentation/UIKit/UIDocumentProperties/wantsIconRepresentation)

A Boolean value that determines whether to render an icon of the document in the navigation bar.

### Supporting drag and drop

[`dragItemsProvider`](/documentation/UIKit/UIDocumentProperties/dragItemsProvider)

A closure that provides drag items that represent the document.

### Supporting sharing

[`activityViewControllerProvider`](/documentation/UIKit/UIDocumentProperties/activityViewControllerProvider)

A closure that provides an activity view controller for sharing the document.



---

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)