There are different ways to create a scrolling widget in a Flutter application:
A ScrollView that creates custom scroll effects using slivers.
A container for a Scrollable that responds to drag gestures by resizing the scrollable until a limit is reached, and then scrolling.
A grid list consists of a repeated pattern of cells arrayed in a vertical and horizontal layout. The GridView widget implements this component.
A Material Design scrollbar. A scrollbar indicates which portion of a Scrollable widget is actually visible.
Controls how Scrollable widgets behave in a subtree.
A scrolling view inside of which can be nested other scrolling views, with their scroll positions being intrinsically linked.
Scrollable implements the interaction model for a scrollable widget, including gesture recognition, but does not have an opinion about how the viewport, which actually displays the children, is constructed.