Screen:multiSwipe()
Realizar un deslizamiento de hasta 10 dedos simultáneamente en la pantalla. Cada dedo opera en su propia línea de tiempo independiente: tocando, moviéndose, manteniéndose y levantándose de acuerdo con sus propios parámetros.
Firma
Screen:multiSwipe(fingers: List<List<SwipePoint>>): void
Devuelve
void
Versión compatible: 1.0.0.26 y superior
Parámetros
| Parameter | Type | Description |
|---|---|---|
| fingers | List<List<SwipePoint>> | Una lista de rutas de dedos. Cada ruta de dedo es una lista de valores SwipePoint. Mínimo 2 puntos por dedo. Máximo 10 dedos. |
Comportamiento de SwipePoint en multiSwipe
Cada ruta de dedo es una lista de SwipePoint(x, y, holdDuration, swipeDuration). El significado de cada parámetro depende de la posición del punto en la lista:
Primer punto (posición inicial):
swipeDuration— Retardo inicial en milisegundos antes de que el dedo toque la pantallaholdDuration— Cuánto tiempo mantenerse en la posición inicial antes de moverse
Puntos posteriores (destinos de movimiento):
swipeDuration— Duración en milisegundos para desplazarse desde el punto anterior hasta este puntoholdDuration— Cuánto tiempo mantenerse en este punto después de llegar
Último punto:
holdDuration— Mantenimiento final en la última posición antes de que el dedo se levante
Todos los dedos se levantan juntos después de que se completen las acciones del dedo más largo.
Ejemplos
Deslizamiento hacia arriba con dos dedos
Screen:multiSwipe({
{
SwipePoint(500, 800, 50, 0),
SwipePoint(500, 400, 50, 1000),
},
{
SwipePoint(600, 800, 50, 0),
SwipePoint(600, 400, 50, 1000),
},
})
Ambos dedos se deslizan hacia arriba simultáneamente durante 1 segundo.
Pellizco para hacer zoom
Screen:multiSwipe({
{
SwipePoint(400, 600, 50, 0),
SwipePoint(200, 400, 50, 1500),
},
{
SwipePoint(600, 600, 50, 0),
SwipePoint(800, 800, 50, 1500),
},
})
Dos dedos se separan del centro durante 1.5 segundos.
Inicio escalonado con mantenimiento
Screen:multiSwipe({
{
SwipePoint(935, 1533, 50, 2000),
SwipePoint(658, 1234, 5000, 2000),
SwipePoint(207, 1372, 50, 2000),
},
{
SwipePoint(794, 1714, 50, 3000),
SwipePoint(240, 1489, 50, 2000),
SwipePoint(694, 1170, 50, 2000),
},
})
Cronología:
| Time | Finger 1 | Finger 2 |
|---|---|---|
| 0ms | En espera (2000ms) | En espera (3000ms) |
| 2000ms | Presionar en (935, 1533) | En espera... |
| 2050ms | Moviéndose a (658, 1234) | En espera... |
| 3000ms | Moviéndose... | Presionar en (794, 1714) |
| 3050ms | Moviéndose... | Moviéndose a (240, 1489) |
| 4050ms | Llega, mantiene 5000ms | Moviéndose... |
| 5050ms | Manteniéndose... | Llega, mantiene 50ms |
| 5100ms | Manteniéndose... | Moviéndose a (694, 1170) |
| 7100ms | Manteniéndose... | Llega, mantiene 50ms |
| 9050ms | Moviéndose a (207, 1372) | Esperando... |
| 11050ms | Llega, mantiene 50ms | Esperando... |
| 11100ms | Todos los dedos se levantan |
Límites
- Máximo 10 dedos
- Cada dedo debe tener al menos 2 valores SwipePoint
- La duración total del gesto no debe exceder aproximadamente 60 segundos
- Un
swipeDurationde0en el primer punto se trata como1ms(esencialmente instantáneo)