iOS 13 Implicit Dimiss Gesture is Interfering

I'd like to turn off the dismiss swipe that iOS 13 puts on any and every formsheet. It seems that setting modalInPresentation isn't enough. I have a 3D view that's displayed as a formsheet on iPad and the implicit dismiss gesture is interfering with our navigation gestures in the 3D view.


How can I remove the gesture?

Accepted Reply

Well, I got some time to look at iOS 13 issues today, and was able to resolve it by checking to see if both gesture recognizers passed to gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer: belong to the set of gesture recognizers that we have attached to the 3D view. Thanks for the pointer.

Replies

i think your best bet is to set the presenation style to full screen, then the swipe to dismiss is completly ignored / removed. It will function like a normal presentation controller pre ios 13.

Take a look at isModalInPresentation propeprty on a viewcontroller that you're presenting

There's a problem with that approach which is that the gesture recognizer is still there and while it will not allow you to dismiss the view it will nudge it around while the user is trying to pan the 3D content.

Then you should handle it in a delegate method or gestureRecognizerShouldBegin method of the view.

Well, I got some time to look at iOS 13 issues today, and was able to resolve it by checking to see if both gesture recognizers passed to gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer: belong to the set of gesture recognizers that we have attached to the 3D view. Thanks for the pointer.