Scrolling widgets

Scroll multiple widgets as children of the parent.

See more widgets in the widget catalog.

GridView

A grid list consists of a repeated pattern of cells arrayed in a vertical and horizontal layout. The GridView widget implements this component.

ListView

A scrollable, linear list of widgets. ListView is the most commonly used scrolling widget. It displays its children one after another in the scroll direction. In the cross axis, the children are required to fill the ListView.

SingleChildScrollView

A box in which a single widget can be scrolled. This widget is useful when you have a single box that will normally be entirely visible, for example a clock face in a time picker, but you need to make sure it can be scrolled if the container gets too small in one axis (the scroll direction).

Scrollable

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.

Scrollbar

A Material Design scrollbar. A scrollbar indicates which portion of a Scrollable widget is actually visible.

CustomScrollView

A ScrollView that creates custom scroll effects using slivers.

NotificationListener

A widget that listens for Notifications bubbling up the tree.

ScrollConfiguration

Controls how Scrollable widgets behave in a subtree.

RefreshIndicator

A Material Design pull-to-refresh wrapper for scrollables.

PageView

A scrollable list that works page by page.

See more widgets in the widget catalog.