Wie erhält man den aktuellen Berührungspunkt und den vorherigen Berührungspunkt in der UIPanGestureRecognizer-Methode?

8

Ich bin neu in iOS, verwende UIPanGestureRecognizer in meinem Projekt. In dem ich eine Anforderung habe, den aktuellen Berührungspunkt und vorherigen Berührungspunkt zu erhalten, wenn ich die Ansicht ziehe. Ich kämpfe um diese zwei Punkte.

Wenn ich die touchesBegan Methode benutze Anstatt UIPanGestureRecognizer zu verwenden, könnte ich diese zwei Punkte mit dem folgenden Code erhalten:

%Vor%

Ich muss diese zwei Punkte in UIPanGestureRecognizer event fire method bekommen. Wie kann ich das erreichen? Bitte führe mich.

    
Uma rajendran 07.11.2012, 12:45
quelle

4 Antworten

15

Sie können dies verwenden:

%Vor%

Speichern Sie den vorherigen Speicherort, indem Sie den aktuellen Speicherort festlegen, falls nicht gefunden, und fügen Sie den aktuellen Speicherort jedes Mal hinzu.

%Vor%     
Paresh Navadiya 07.11.2012, 13:08
quelle
3

Wenn Sie eine UIPanGestureRecognizer verknüpfen eine IBAction, wird die Aktion bei jeder Änderung aufgerufen. Der Gestenerkenner bietet auch eine Eigenschaft namens state , die angibt, ob es sich um die erste UIGestureRecognizerStateBegan , die letzte UIGestureRecognizerStateEnded oder nur ein Ereignis zwischen UIGestureRecognizerStateChanged handelt.

Um Ihr Problem zu lösen, versuchen Sie es wie folgt:

%Vor%

Sie können sich auch die Methode translationInView: .

    
miho 07.11.2012 13:08
quelle
0

Es gibt eine Funktion in UITouch, um die vorherige Berührung in der Ansicht zu erhalten

  • (CGPoint) locationInView: (UIView *) view;
  • (CGPoint) previousLocationInView: (UIView *) view;
Nagaraj 26.12.2014 09:12
quelle
0

Sie sollten den Pan-Gesten-Erkenner wie folgt instanziieren:

%Vor%

Dann sollten Sie panRecognizer zu Ihrer Ansicht hinzufügen:

%Vor%

Die Methode - (void)handlePan:(UIPanGestureRecognizer *)recognizer wird aufgerufen, während der Benutzer mit der Ansicht interagiert. In handlePan: Sie können den Punkt wie folgt erhalten:

%Vor%

Sie können auch den Status des panRecognizer abrufen:

%Vor%     
NikosM 07.11.2012 13:10
quelle