iOS 13 introduced a new way to scroll within a scrollview - you can now touch and hold on a scroll bar, then drag to scroll.
I'm trying to add some logic to the panGestureRecognizer of a scrollview.
I attached my own handler via [scrollView.panGestureRecognizer addTarget: action:].
Both cases fire through panGestureRecognizer - but I can't see a way to distinguish which scrolling mode was active.
I attempted to monitor the velocity of the panGestureRecognizer and which way the scrollview is responding - with the idea that when using the scrollbar, these directions oppose each other. But this is flaky, and has false positives and negatives.
Post
Replies
Boosts
Views
Activity
Running macOS 11.0.1 (20B29) with Xcode 12.2 (12B45b), with a brand new Xcode project configured as follows
File -> New Project -> iOS -> App Interface: SwiftUI Lifecycle: UIKit App Delegate Language: Swift Uncheck all checkboxes
In xcodeproj target, select Mac checkbox
Run app on Mac
I get the following errors
2020-11-26 21:24:42.940494+0000 Test[85254:1719377] [UIFocus] Focus system disabled
2020-11-26 21:24:43.029918+0000 Test[85254:1719377] [UIFocus] Focus system enabled
2020-11-26 21:24:43.606709+0000 Test[85254:1719377] [UIFocus] Focus system disabled
In my actual app, I get a lot more of these - certain interactions like opening a popover can trigger them. If the last message was Focus system enabled, stuff works fine. If the last is Focus system disabled, a load of elements like Toggle and Slider aren't clickable. I couldn't figure out how to get it to end on an enabled state.
I also tested this on my DTK and get the same errors on the 11.1 Big Sur beta with 12.3 Xcode beta.