Flutter手势判断向上滑还是向下滑

216 阅读1分钟

onVerticalDragStart: _onVerticalDragStart, onVerticalDragUpdate: _onVerticalDragUpdate, onVerticalDragEnd: _onVerticalDragEnd,

late Offset _startSwipeOffset; late Offset _endSwipeOffset; void _onVerticalDragStart(DragStartDetails details) { _startSwipeOffset = details.globalPosition; }

void _onVerticalDragUpdate(DragUpdateDetails details) { _endSwipeOffset = details.globalPosition; }

void _onVerticalDragEnd(DragEndDetails details) { final offsetDifference = _startSwipeOffset.dy - _endSwipeOffset.dy; final swipeUp = offsetDifference > 0 ? true : false; }