Sobes.tech
Junior

Aké gestá je možné spracovať vo Flutteri?

sobes.tech AI

Odpoveď od AI

V Flutteri je možné spracovávať nasledujúce gestá pomocou widgetov ako GestureDetector a ďalších:

  • Dotyky:

    • onTap: Jednoduché dotyky.
    • onDoubleTap: Dvojité dotyky.
    • onLongPress: Dlhé stlačenie.
    • onTapDown: Dotyk v okamihu kontaktu s obrazovkou.
    • onTapUp: Uvoľnenie po dotyku.
    • onTapCancel: Zrušenie dotyku.
  • Potiahnutie (Draggable):

    • onVerticalDragStart: Začiatok zvislého potiahnutia.
    • onVerticalDragUpdate: Aktualizácia zvislého potiahnutia.
    • onVerticalDragEnd: Koniec zvislého potiahnutia.
    • onHorizontalDragStart: Začiatok vodorovného potiahnutia.
    • onHorizontalDragUpdate: Aktualizácia vodorovného potiahnutia.
    • onHorizontalDragEnd: Koniec vodorovného potiahnutia.
    • onPanStart: Začiatok akéhokoľvek potiahnutia.
    • onPanUpdate: Aktualizácia akéhokoľvek potiahnutia.
    • onPanEnd: Koniec akéhokoľvek potiahnutia.
  • Zvýšenie/zníženie (Scale):

    • onScaleStart: Začiatok škálovania.
    • onScaleUpdate: Aktualizácia škálovania.
    • onScaleEnd: Koniec škálovania.
  • Iné gestá:

    • onForcePressStart: Začiatok silného stlačenia (podporované na niektorých zariadeniach).
    • onForcePressPeak: Vrchol silného stlačenia.
    • onForcePressUpdate: Aktualizácia silného stlačenia.
    • onForcePressEnd: Koniec silného stlačenia.

Príklad použitia GestureDetector:

import 'package:flutter/material.dart';

class MyGestureWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return GestureDetector(
      onTap: () {
        print('Dotyk!');
      },
      onDoubleTap: () {
        print('Dvojitý dotyk!');
      },
      onLongPress: () {
        print('Dlhé stlačenie!');
      },
      child: Container(
        color: Colors.blue,
        width: 100,
        height: 100,
        child: Center(
          child: Text('Stlač ma'),
        ),
      ),
    );
  }
}