Junior
Milyen gesztusokat lehet kezelni Flutterben?
sobes.tech MI
Válasz az MI-től
A Flutterben a következő gesztusokat lehet kezelni a GestureDetector és más widgetek segítségével:
-
Érintések:
onTap: Egyszerű érintés.onDoubleTap: Kétszeri érintés.onLongPress: Hosszú nyomás.onTapDown: Érintés pillanatában.onTapUp: Engedés érintés után.onTapCancel: Érintés megszakítása.
-
Húzás (Draggable):
onVerticalDragStart: Függőleges húzás kezdete.onVerticalDragUpdate: Függőleges húzás frissítése.onVerticalDragEnd: Függőleges húzás vége.onHorizontalDragStart: Vízszintes húzás kezdete.onHorizontalDragUpdate: Vízszintes húzás frissítése.onHorizontalDragEnd: Vízszintes húzás vége.onPanStart: Bármilyen húzás kezdete.onPanUpdate: Bármilyen húzás frissítése.onPanEnd: Bármilyen húzás vége.
-
Nagyítás/kicsinyítés (Scale):
onScaleStart: A nagyítás kezdete.onScaleUpdate: A nagyítás frissítése.onScaleEnd: A nagyítás vége.
-
Egyéb gesztusok:
onForcePressStart: Erős nyomás kezdete (egyes eszközökön támogatott).onForcePressPeak: Az erős nyomás csúcsa.onForcePressUpdate: Az erős nyomás frissítése.onForcePressEnd: Az erős nyomás vége.
Példa a GestureDetector használatára:
import 'package:flutter/material.dart';
class MyGestureWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return GestureDetector(
onTap: () {
print('Érintés!');
},
onDoubleTap: () {
print('Dupla érintés!');
},
onLongPress: () {
print('Hosszú nyomás!');
},
child: Container(
color: Colors.blue,
width: 100,
height: 100,
child: Center(
child: Text('Nyomj meg engem'),
),
),
);
}
}