---
title: "presentationControllerShouldDismiss(_:)"
framework: uikit
role: symbol
role_heading: Instance Method
path: "uikit/uiadaptivepresentationcontrollerdelegate/presentationcontrollershoulddismiss(_:)"
---

# presentationControllerShouldDismiss(_:)

Asks the delegate for permission to dismiss the presentation.

## Declaration

```swift
optional func presentationControllerShouldDismiss(_ presentationController: UIPresentationController) -> Bool
```

## Parameters

- `presentationController`: The presentation controller that manages the adaptivity change.

## Return Value

Return Value true to allow the system to dismiss the presentation, false to refuse the dismissal.

## Discussion

Discussion The system may call this method at any time. This method isn’t guaranteed to be followed by a call to presentationControllerWillDismiss(_:) or presentationControllerDidDismiss(_:). Make sure that your implementation of this method returns quickly.

## See Also

### Related Documentation

- [Disabling the pull-down gesture for a sheet](uikit/disabling-the-pull-down-gesture-for-a-sheet.md)

### Responding to adaptive transitions

- [presentationController(_:willPresentWithAdaptiveStyle:transitionCoordinator:)](uikit/uiadaptivepresentationcontrollerdelegate/presentationcontroller(_:willpresentwithadaptivestyle:transitioncoordinator:).md)
- [presentationControllerDidAttemptToDismiss(_:)](uikit/uiadaptivepresentationcontrollerdelegate/presentationcontrollerdidattempttodismiss(_:).md)
- [presentationControllerDidDismiss(_:)](uikit/uiadaptivepresentationcontrollerdelegate/presentationcontrollerdiddismiss(_:).md)
- [presentationControllerWillDismiss(_:)](uikit/uiadaptivepresentationcontrollerdelegate/presentationcontrollerwilldismiss(_:).md)
