userScrollDirection property

ScrollDirection userScrollDirection
final

The direction in which the user is attempting to scroll, relative to the axisDirection and growthDirection.

For example, if growthDirection is GrowthDirection.forward and axisDirection is AxisDirection.down, then a ScrollDirection.reverse means that the user is scrolling down, in the positive scrollOffset direction.

If the user is not scrolling, this will return ScrollDirection.idle even if there is (for example) a ScrollActivity currently animating the position.

This is used by some slivers to determine how to react to a change in scroll offset. For example, RenderSliverFloatingPersistentHeader will only expand a floating app bar when the userScrollDirection is in the positive scroll offset direction.

This sample shows a CustomScrollView, with Radio buttons in the AppBar.bottom that change the AxisDirection to illustrate different configurations. With a NotificationListener to listen to UserScrollNotifications, which occur when the ScrollDirection changes or stops.
link

To create a local project with this code sample, run:
flutter create --sample=rendering.ScrollDirection.1 mysample

Implementation

final ScrollDirection userScrollDirection;