Questo articolo spiega come gestire eventi touch in Android utilizzando un'app web React
Vedi di seguito come gestire eventi touch in Android utilizzando React.
React catturerà gli eventi touch di Android con i seguenti eventi: onTouchStart; onTouchMove; onTouchEnd
Di seguito è mostrato un esempio di come gestire eventi touch di Android all'interno di un'app web React
import React from 'react';
export default class EventComponent extends React.Component {
constructor(props) {
super(props);
this._onTouchStart = this._onTouchStart.bind(this);
this._onTouchMove = this._onTouchMove.bind(this);
this._onTouchEnd = this._onTouchEnd.bind(this);
this.state = { swiped: false };
this._swipe = {};
this.minDistance = 50;
}
_onTouchStart(e) {
const touch = e.touches[0];
this._swipe = { x: touch.clientX };
this.setState({ swiped: false });
}
_onTouchMove(e) {
if (e.changedTouches && e.changedTouches.length) {
const touch = e.changedTouches[0];
this._swipe.swiping = true;
}
}
_onTouchEnd(e) {
const touch = e.changedTouches[0];
const absX = Math.abs(touch.clientX - this._swipe.x);
if (this._swipe.swiping && absX this.minDistance ) {
this.props.onSwiped && this.props.onSwiped();
this.setState({ swiped: true });
}
this._swipe = {};
}
render() {
return (
{`Component-${this.state.swiped ? 'swiped' : ''}`}
); } }
Please report any broken links by emailing support@elotouch.com and include a link to the knowledge article