iOS - Erkennen, wenn mehr als ein Finger auf dem Bildschirm ist

8

Ich suche nach dem besten Weg, um mehr als einen Finger auf dem Bildschirm zu erkennen. Ich erkenne kein Tippen oder Kneifen, nur die Tatsache, dass mehr als eine Berührung stattfindet. Es scheint keine Gestenerkenner dafür zu geben. Was ist der beste Weg?

    
sol 30.09.2010, 17:48
quelle

5 Antworten

13

In den Strukturen touchesBegan, touchesMoved und toustsEnded ist ein Parameter das Ereignis, das ein UIEvent-Objekt ist. Die Anzahl der Finger auf dem Bildschirm ist [[event allTouches] count].

[BEARBEITET, weil Josh Hinman darauf hingewiesen hat, dass ich es vorher falsch gemacht hatte - mein früherer Vorschlag, [touch count] auf den Berührungen-Parameter in denselben Methoden zu verwenden, wird nicht funktionieren.]

    
William Jockusch 30.09.2010, 18:52
quelle
3

Lesen Sie die Methode -touchesBegan:withEvent: nach. Es ist der Einstieg in die Multi-Touch-Ereignisbehandlung.

Hier ist ein Entwickler-Link auf Multitouch-Events: Ссылка

    
Dan Ray 30.09.2010 17:55
quelle
0

One / Multi-Touch ist für Sie transparent - Sie erhalten nur Benachrichtigungen darüber, wo eine Berührung gestartet / verschoben / beendet / getappt wurde. Wenn zwei Berührungen gleichzeitig auftreten, erhalten Sie Benachrichtigungen für beide.

Ich kenne keine eingebaute Funktion, die bestimmt, ob die Touch-Sequenzen, die Sie sehen, eine Prise sind - aber Sie können sich den Muster-Code "touches" von Apple zur Inspiration ansehen.

>

Ссылка

    
Danra 30.09.2010 17:54
quelle
0

Sie können versuchen, eine UITapGestureRecognizer-Klasse zu verwenden, und legen Sie die Eigenschaft numberOfTouchesRequired an 2.

Beachten Sie, dass dies nur funktioniert, wenn multipleTouchEnabled wird in der Ansicht auf YES gesetzt.

    
Kris Markel 30.09.2010 17:57
quelle
0
  • (void) touchesBegan: (NSSet *) berührt withEvent: (UIEvent *) event {

    NSLog (@ "% lu", [[event allTouches] Zählung]); }

ABJ 11.11.2016 13:15
quelle