<!--
{
  "availability" : [
    "iOS: 4.2.0 -",
    "iPadOS: 4.2.0 -",
    "macCatalyst: 13.1.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UIPrintInteractionController/present(from:animated:completionHandler:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:objc(cs)UIPrintInteractionController(im)presentFromBarButtonItem:animated:completionHandler:"
  },
  "title" : "present(from:animated:completionHandler:)"
}
-->

# present(from:animated:completionHandler:)

Presents the iPad printing user interface in a popover view, optionally animating it from a bar-button item.

```
func present(from item: UIBarButtonItem, animated: Bool, completionHandler completion: UIPrintInteractionController.CompletionHandler? = nil) -> Bool
```

## Parameters

`item`

The [`UIBarButtonItem`](/documentation/UIKit/UIBarButtonItem) object that the user tapped for printing. You are encouraged to use the constant [`UIBarButtonItem.SystemItem.action`](/documentation/UIKit/UIBarButtonItem/SystemItem/action) when creating a bar-button item for this purpose.

`animated`

<doc://com.apple.documentation/documentation/Swift/true> to animate the printing popover view from `item`, <doc://com.apple.documentation/documentation/Swift/false> to display it immediately.

`completion`

A block of type [`UIPrintInteractionController.CompletionHandler`](/documentation/UIKit/UIPrintInteractionController/CompletionHandler) that you implement to handle the conclusion of the print job (for instance, to reset state) and to handle any errors encountered in printing.

## Discussion

It is valid to call this method for applications on iPad devices. Calling this method on an iPhone or iPod touch with `animated` set to <doc://com.apple.documentation/documentation/Swift/true> causes the printing options view to animate upward from the bottom of the screen.

If you call this method when the printing options are already displayed, `UIPrintInteractionController` hides the printing-options popover view. You must call the method again to display the options.

---

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)