Reputation: 1114
Is there any way to cascade UIGestureRecognizers to detect a tap and then drag. For example, I want to detect when the user taps and then drags his finger around.
This would be similar how drag works on trackpads.
So I want to detect a tap, then I want to get UIPanGestureRecognizer to send me continuous updates.
I want to use standard UIGesture classes to create this new gesture instead of creating my own using raw touches.
Is this even possible?
Upvotes: 13
Views: 8622
Reputation: 1114
although i haven't found the solution the way i expected, i found a better solution.
By just using UILongPressGrstureRecognizer
, it is surprising that it is able to implement tap and drag.
You have to:
e.g.:
UILongPressGestureRecognizer *mouseDrag = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleDrag:)];
mouseDrag.numberOfTapsRequired=1;
mouseDrag.minimumPressDuration=0.05;
[clickLeft requireGestureRecognizerToFail:mouseDrag];
to handle the drag, you must determine the state to handle it appropriately as a continuous gesture.
Upvotes: 27