Ich habe den folgenden Code, der vier Gesten erzeugt:Können UILongPressGestureRecognizer und UISwipeGestureRecognizer zusammen verwendet werden?
self.userInteractionEnabled = YES;
UIPanGestureRecognizer * panGesture = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(handlePan:)];
[panGesture setDelegate:self];
[self addGestureRecognizer:panGesture];
UILongPressGestureRecognizer * longPressGesture = [[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(handleLongPress:)];
longPressGesture.minimumPressDuration = 0.00;
[self addGestureRecognizer:longPressGesture];
UISwipeGestureRecognizer * swipeUp = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(handleSwipeUp:)];
swipeUp.direction = UISwipeGestureRecognizerDirectionUp;
[self addGestureRecognizer:swipeUp];
UISwipeGestureRecognizer * swipeDown = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(handleSwipeDown:)];
swipeDown.direction = UISwipeGestureRecognizerDirectionDown;
[self addGestureRecognizer:swipeDown];
Die Pan und Longpress funktionieren, aber ich habe nie eine der Swipe-Gesten bekommen. Gibt es etwas Besonderes, um die Swipe-Selektoren aufrufen zu lassen?
Dank
LOL, ja du hast. Ich habe das Dokument gelesen und sehe das Problem, obwohl ich keine Bestätigung finden konnte. Wenn Sie meinen obigen Code bemerken, setze ich LongTap minimumPressDuration auf 0.00. Wenn ich das mache und einen Haltepunkt bei beiden Gesten, Pan und Swipe, setze, bricht es nur bei Pan. Wenn ich jedoch die minimale PressDuration auf 0.125, 1/4 sek. Es bricht bei beiden. Ich konnte nichts finden, was dies erklärte, daher bin ich sehr enttäuscht darüber, warum die Pressezeit wichtig ist. Aber, ja, Ihre Lösung funktioniert größtenteils. – LilMoke