AnimatedListState class

The AnimatedListState for AnimatedList, a scrolling list container that animates items when they are inserted or removed.

When an item is inserted with insertItem an animation begins running. The animation is passed to AnimatedList.itemBuilder whenever the item's widget is needed.

When multiple items are inserted with insertAllItems an animation begins running. The animation is passed to AnimatedList.itemBuilder whenever the item's widget is needed.

When an item is removed with removeItem its animation is reversed. The removed item's animation is passed to the removeItem builder parameter.

An app that needs to insert or remove items in response to an event can refer to the AnimatedList's state with a global key:

// (e.g. in a stateful widget)
GlobalKey<AnimatedListState> listKey = GlobalKey<AnimatedListState>();

// ...

@override
Widget build(BuildContext context) {
  return AnimatedList(
    key: listKey,
    itemBuilder: (BuildContext context, int index, Animation<double> animation) {
      return const Placeholder();
    },
  );
}

// ...

void _updateList() {
  // adds "123" to the AnimatedList
  listKey.currentState!.insertItem(123);
}

AnimatedList item input handlers can also refer to their AnimatedListState with the static AnimatedList.of method.

Inheritance

Constructors

AnimatedListState()

Properties

context BuildContext
The location in the tree where this widget builds.
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
mounted bool
Whether this State object is currently in a tree.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
widget AnimatedList
The current configuration.
no setterinherited

Methods

activate() → void
Called when this object is reinserted into the tree after having been removed via deactivate.
inherited
build(BuildContext context) Widget
Describes the part of the user interface represented by this widget.
override
createTicker(TickerCallback onTick) Ticker
Creates a ticker with the given callback.
inherited
deactivate() → void
Called when this object is removed from the tree.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
didChangeDependencies() → void
Called when a dependency of this State object changes.
inherited
didUpdateWidget(covariant AnimatedList oldWidget) → void
Called whenever the widget configuration changes.
inherited
dispose() → void
Called when this object is removed from the tree permanently.
inherited
initState() → void
Called when this object is inserted into the tree.
inherited
insertAllItems(int index, int length, {Duration duration = _kDuration, bool isAsync = false}) → void
Insert multiple items at index and start an animation that will be passed to AnimatedGrid.itemBuilder or AnimatedList.itemBuilder when the items are visible.
inherited
insertItem(int index, {Duration duration = _kDuration}) → void
Insert an item at index and start an animation that will be passed to AnimatedGrid.itemBuilder or AnimatedList.itemBuilder when the item is visible.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
reassemble() → void
Called whenever the application is reassembled during debugging, for example during hot reload.
inherited
removeAllItems(AnimatedRemovedItemBuilder builder, {Duration duration = _kDuration}) → void
Remove all the items and start an animation that will be passed to builder when the items are visible.
inherited
removeItem(int index, AnimatedRemovedItemBuilder builder, {Duration duration = _kDuration}) → void
Remove the item at index and start an animation that will be passed to builder when the item is visible.
inherited
setState(VoidCallback fn) → void
Notify the framework that the internal state of this object has changed.
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
toStringShort() String
A brief description of this object, usually just the runtimeType and the hashCode.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited