A virtual viewport onto a list of equally sized children.

ListViewport differs from LazyListViewport in that ListViewport uses an Iterable list of children. That makes ListViewport suitable for a large (but not extremely large or infinite) list of children.

ListViewport differs from LazyBlockViewport in that ListViewport requires each of its children to be the same size. That makes ListViewport more efficient but less flexible than LazyBlockViewport.

Prefer Viewport when there is only one child.

Used by ScrollableList.

See also:

Mixes-in
  • VirtualViewportFromIterable

Constructors

ListViewport({ExtentsChangedCallback onExtentsChanged, double scrollOffset: 0.0, Axis mainAxis: Axis.vertical, ViewportAnchor anchor: ViewportAnchor.start, @required double itemExtent, bool itemsWrap: false, EdgeInsets padding, Iterable<Widget> children: const [] })

Creates a virtual viewport onto a list of equally sized children.

Properties

children Iterable<Widget>

read-only
anchor ViewportAnchor

Whether to place first child at the start of the container or the last child at the end of the container, when the viewport has not been offset.

read-only, inherited
hashCode int

Get a hash code for this object.

read-only, inherited
itemExtent double

The height of each item if scrollDirection is Axis.vertical, otherwise the width of each item.

read-only, inherited
itemsWrap bool

Whether the first item should be revealed after scrolling past the last item.

read-only, inherited
key Key

Controls how one widget replaces another widget in the tree.

read-only, inherited
mainAxis Axis

The direction in which the children are permitted to be larger than the viewport.

read-only, inherited
onExtentsChanged ExtentsChangedCallback

Called when the interior or exterior dimensions of the viewport change.

read-only, inherited
padding EdgeInsets

The amount of space by which to inset the children inside the viewport.

read-only, inherited
runtimeType Type

A representation of the runtime type of the object.

read-only, inherited
scrollOffset double

The startOffset without taking the padding into account.

read-only, inherited
startOffset double

read-only, inherited

Operators

operator ==(other) bool

The equality operator.

inherited

Methods

createElement() → _VirtualListViewportElement

RenderObjectWidgets always inflate to a RenderObjectElement subclass.

inherited
createRenderObject(BuildContext context) RenderList

Creates an instance of the RenderObject class that this RenderObjectWidget represents, using the configuration described by this RenderObjectWidget.

inherited
debugFillDescription(List<String> description) → void

Add additional information to the given description for use by toString.

inherited
didUnmountRenderObject(RenderObject renderObject) → void

A render object previously associated with this widget has been removed from the tree. The given RenderObject will be of the same type as returned by this object's createRenderObject.

inherited
noSuchMethod(Invocation invocation) → dynamic

Invoked when a non-existent method or property is accessed.

inherited
toString() String

Returns a string representation of this object.

inherited
toStringShort() String

A short, textual description of this widget.

inherited
updateRenderObject(BuildContext context, RenderObject renderObject) → void

Copies the configuration described by this RenderObjectWidget to the given RenderObject, which will be of the same type as returned by this object's createRenderObject.

inherited