Page sheet dismiss gesture conflict with driving scroll view
When scrolling down any scroll view in the overlay in view controllers presented using page sheet modal presentation style, the view controller is interactively dismissed.
Page sheet should not be dismissed when scrolling the driving scroll view down. But it could be enabled for other other areas outside the overlay controller.
Hi @aabdellah, in iOS 13?
Does disabling the drag to dismiss gesture do the trick?
viewController.isModalInPresentation = true
Tried that on the child controller and it still dismisses it, when adding it to the parent view controller there're some glitches when scrolling and it disables the entire swipe gesture.
The workaround that I'm using now is adding a UIRefershControl to the driving scroll view. Because the driving scroll view moves with the overlay, the refresh control never shows. Not ideal but that's how I dealt with it.
I'm not sure if there's a way to disable the sheet dismiss gesture while scrolling the driving scroll view like what happens with most views (pickers, sliders, etc). I think that would be the most ideal fix.
Using the UIRefreshControl is a good workaround for tableViews. Not ideal of course. But it should work for a long time. The sheet presentation's implementation is based on the UIScrollView's implementation. They are deeply linked. I will look a bit more soon but it looks like the only way is to create your own sheet presentation.