Sobes.tech
Junior

Ποια gestures μπορούν να επεξεργαστούν στο Flutter;

sobes.tech AI

Απάντηση από AI

Στο Flutter, μπορείτε να χειριστείτε τις ακόλουθες κινήσεις χρησιμοποιώντας widgets όπως το GestureDetector και άλλα:

  • Αγγίγματα:

    • onTap: Απλό άγγιγμα.
    • onDoubleTap: Διπλό άγγιγμα.
    • onLongPress: Μακρύ πάτημα.
    • onTapDown: Άγγιγμα τη στιγμή της επαφής με την οθόνη.
    • onTapUp: Απελευθέρωση μετά το άγγιγμα.
    • onTapCancel: Ακύρωση άγγιγματος.
  • Σύρσιμο (Draggable):

    • onVerticalDragStart: Έναρξη κάθετου σύρσιματος.
    • onVerticalDragUpdate: Ενημέρωση κάθετου σύρσιματος.
    • onVerticalDragEnd: Τέλος κάθετου σύρσιματος.
    • onHorizontalDragStart: Έναρξη οριζόντιου σύρσιματος.
    • onHorizontalDragUpdate: Ενημέρωση οριζόντιου σύρσιματος.
    • onHorizontalDragEnd: Τέλος οριζόντιου σύρσιματος.
    • onPanStart: Έναρξη οποιουδήποτε σύρσιματος.
    • onPanUpdate: Ενημέρωση οποιουδήποτε σύρσιματος.
    • onPanEnd: Τέλος οποιουδήποτε σύρσιματος.
  • Μεγέθυνση/σμίκρυνση (Scale):

    • onScaleStart: Έναρξη κλιμάκωσης.
    • onScaleUpdate: Ενημέρωση κλιμάκωσης.
    • onScaleEnd: Τέλος κλιμάκωσης.
  • Άλλα gestures:

    • onForcePressStart: Έναρξη ισχυρής πίεσης (υποστηρίζεται σε ορισμένες συσκευές).
    • onForcePressPeak: Πυρήνας ισχυρής πίεσης.
    • onForcePressUpdate: Ενημέρωση ισχυρής πίεσης.
    • onForcePressEnd: Τέλος ισχυρής πίεσης.

Παράδειγμα χρήσης του GestureDetector:

import 'package:flutter/material.dart';

class MyGestureWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return GestureDetector(
      onTap: () {
        print('Πατήθηκε!');
      },
      onDoubleTap: () {
        print('Διπλό πάτημα!');
      },
      onLongPress: () {
        print('Μακρύ πάτημα!');
      },
      child: Container(
        color: Colors.blue,
        width: 100,
        height: 100,
        child: Center(
          child: Text('Πατήστε με'),
        ),
      ),
    );
  }
}