2015-07-05 3 views
11

arbeiten Betrachten Sie den folgenden Code ein:Android Webview Multi-Touch-Berührungsstartereignis nicht mit mehr als zwei Finger

canvas.addEventListener('touchstart', function(event) { 
    console.log('start'); 
}); 

Wenn ich mit zwei Fingern zugleich tippen Ich habe die folgende Ausgabe (was cool ist, weil ist gedruckt zweimal):

I/SnapScrollController(26508): setSnapScrollingMode case-default no-op 
I/chromium(26508): [INFO:CONSOLE(69)] "start", source: file:///android_asset/index.html (69) 
I/chromium(26508): [INFO:CONSOLE(69)] "start", source: file:///android_asset/index.html (69) 

Aber wenn ich mehr als zwei Finger zugleich verwenden ich das gleiche Ergebnis hatte, was mache ich falsch? Ich wurde erwartet, dass das Protokoll "Start" so oft wie Finger, die ich verwendete. Auf der anderen Seite touchmove und touchend funktioniert gut.

Ich habe den Code hochgeladen here

+0

ausgelöst zu fangen ?? – Ricardo

+0

Was passiert, wenn Sie 'event.touches.length' in Ihren touchstart- und touchmove-Event-Handlern protokollieren? Das Problem könnte darin bestehen, dass Sie, wenn Sie unseren dritten Finger drücken, einen der bereits berührenden Finger bewegen und das System in den "Moving" -Modus wechseln, so dass von nun an Touchmove-Ereignisse ausgelöst werden. –

+0

@EdBallot Ich habe bereits Test, wenn ich auf dem Bildschirm 2 Finger (gleichzeitig Zinken) und dann noch eins, das Ergebnis ist die nächste Finger ist ihre Protokolle drucken. Mein Problem ist, ich möchte alle 3,4 oder 5 TouchStartEvent gleichzeitig Finger auf dem Bildschirm platzieren. Ich aktualisiere den Frage-Upload-Code. – Ricardo

Antwort

0

Das Problem auf meinem HTC One Gerät war. Es ist posible erhalten 3 oder mehr berührt Drehen Sie hierfür auf Vergrößerung Gestures mein Gerät Start alle Ereignisse mit den Fingern (mehr als zwei)

enter image description here