SliverAnimatedList class Null safety

A sliver that animates items when they are inserted or removed.

This widget's SliverAnimatedListState can be used to dynamically insert or remove items. To refer to the SliverAnimatedListState either provide a GlobalKey or use the static SliverAnimatedList.of method from an item's input callback.

This sample application uses a SliverAnimatedList to create an animated effect when items are removed or added to the list.
To create a local project with this code sample, run:
flutter create --sample=widgets.SliverAnimatedList.1 mysample

See also:

  • SliverList, which does not animate items when they are inserted or removed.
  • AnimatedList, a non-sliver scrolling container that animates items when they are inserted or removed.
Inheritance

Constructors

SliverAnimatedList({Key? key, required AnimatedListItemBuilder itemBuilder, ChildIndexGetter? findChildIndexCallback, int initialItemCount = 0})
Creates a sliver that animates items when they are inserted or removed.
const

Properties

findChildIndexCallback → ChildIndexGetter?
Called to find the new index of a child based on its key in case of reordering.
final
hashCode → int
The hash code for this object.
nonVirtual">@nonVirtualread-onlyinherited
initialItemCount → int
The number of items the list will start with.
final
itemBuilder → AnimatedListItemBuilder
Called, as needed, to build list item widgets.
final
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
runtimeType → Type
A representation of the runtime type of the object.
read-onlyinherited

Methods

createElement() → StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() → SliverAnimatedListState
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
protected">@protectedinherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) → String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
nonVirtual">@nonVirtualinherited

Static Methods

maybeOf(BuildContext context) → SliverAnimatedListState?
The state from the closest instance of this class that encloses the given context.
of(BuildContext context) → SliverAnimatedListState
The state from the closest instance of this class that encloses the given context.