Junior
Que gestos podem ser tratados no Flutter?
sobes.tech IA
Resposta da IA
No Flutter, pode lidar com os seguintes gestos usando widgets como GestureDetector e outros:
-
Toques:
onTap: Toque simples.onDoubleTap: Toque duplo.onLongPress: Toque longo.onTapDown: Toque no momento do contacto com a tela.onTapUp: Soltar após o toque.onTapCancel: Cancelar toque.
-
Arrastar (Draggable):
onVerticalDragStart: Início do arrasto vertical.onVerticalDragUpdate: Atualização do arrasto vertical.onVerticalDragEnd: Fim do arrasto vertical.onHorizontalDragStart: Início do arrasto horizontal.onHorizontalDragUpdate: Atualização do arrasto horizontal.onHorizontalDragEnd: Fim do arrasto horizontal.onPanStart: Início de qualquer arrasto.onPanUpdate: Atualização de qualquer arrasto.onPanEnd: Fim de qualquer arrasto.
-
Aumentar/diminuir (Escala):
onScaleStart: Início do escalonamento.onScaleUpdate: Atualização do escalonamento.onScaleEnd: Fim do escalonamento.
-
Outros gestos:
onForcePressStart: Início de uma pressão forte (suportado em alguns dispositivos).onForcePressPeak: Pico de pressão forte.onForcePressUpdate: Atualização da pressão forte.onForcePressEnd: Fim da pressão forte.
Exemplo de uso de GestureDetector:
import 'package:flutter/material.dart';
class MyGestureWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return GestureDetector(
onTap: () {
print('Toque!');
},
onDoubleTap: () {
print('Toque duplo!');
},
onLongPress: () {
print('Toque longo!');
},
child: Container(
color: Colors.blue,
width: 100,
height: 100,
child: Center(
child: Text('Toque-me'),
),
),
);
}
}