Rozważmy następujący kod:Android Webview multitouch wydarzenie touchstart nie współpracuje z ponad 2 palce
canvas.addEventListener('touchstart', function(event) {
console.log('start');
});
Kiedy dotknij 2 palce jednocześnie Mam następujące wyjściowe (co jest cool, ponieważ jest drukowane dwa razy):
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)
Ale kiedy mogę używać więcej niż 2 palce jednocześnie miałem ten sam rezultat, co robię źle? Oczekiwano, że dziennik "uruchomi się" tyle razy, ile palców używałam.
W drugiej stronie touchmove
i touchend
działa dobrze.
Wysłałem kod here
jest posible dostać 3 lub więcej dotyka ?? – Ricardo
co się stanie, jeśli zarejestrujesz 'event.touches.length' w programach obsługi zdarzeń touchstart i touchmove? Problem może polegać na tym, że po odłożeniu naszego trzeciego palca przesuwasz jeden z już dotykających się palców i powodujesz, że system przechodzi w "ruchomy" tryb, od którego od tego momentu wystrzeliwują się odczyty touchmove. –
@EdBallot Mam już test, kiedy umieszczam na ekranie 2 palce (przy tym samym zębie), a następnie jeszcze jeden, wynikiem jest to, że następne palce drukują swoje logi. Moim problemem jest to, że chcę uchwycić wszystkie 3,4 lub 5 touchStartEvent umieszczając palce na ekranie w tym samym czasie. Aktualizuję kod przesyłania pytań. – Ricardo