gesturePanWithData method

GestureDetector gesturePanWithData({
  1. Key? key,
  2. required DataDragDetailsGroup data,
  3. FunDragDown? onPanDown,
  4. FunDragStart? onPanStart,
  5. FunDragUpdate? onPanUpdate,
  6. FunDragEnd? onPanEnd,
  7. FunDragCancel? onPanCancel,
  8. void onTap()?,
  9. void onDoubleTap()?,
})

GestureDetector 扩展

Implementation

GestureDetector gesturePanWithData(
    {Key? key,
    required DataDragDetailsGroup data,
    //垂直_水平
    FunDragDown? onPanDown,
    FunDragStart? onPanStart,
    FunDragUpdate? onPanUpdate,
    FunDragEnd? onPanEnd,
    FunDragCancel? onPanCancel,
    void Function()? onTap,
    void Function()? onDoubleTap}) {
  return GestureDetector(
      key: key,
      //垂直_水平
      onPanDown: (p0) {
        data.reset();
        data.dragDownDetails = p0;
        onPanDown?.call(p0, data);
      },
      onPanStart: (p0) {
        data.dragStartDetails = p0;
        onPanStart?.call(p0, data);
      },
      onPanUpdate: (p0) {
        data.dragUpdateDetails = p0;
        onPanUpdate?.call(p0, data);
      },
      onPanEnd: (p0) {
        data.dragEndDetails = p0;
        onPanEnd?.call(p0, data);
        data.reset();
      },
      onPanCancel: () {
        onPanCancel?.call(data);
        data.reset();
      },
      //增加一个普通的点击
      onTap: onTap,
      onDoubleTap: onDoubleTap,
      child: this);
}