ExpansionTile class

A single-line ListTile with a trailing button that expands or collapses the tile to reveal or hide the children.

This widget is typically used with ListView to create an "expand / collapse" list entry. When used with scrolling widgets like ListView, a unique PageStorageKey must be specified to enable the ExpansionTile to save and restore its expanded state when it is scrolled in and out of view.

See also:

Inheritance

Constructors

ExpansionTile({Key key, Widget leading, @required Widget title, Color backgroundColor, ValueChanged<bool> onExpansionChanged, List<Widget> children: const [], Widget trailing, bool initiallyExpanded: false })
Creates a single-line ListTile with a trailing button that expands or collapses the tile to reveal or hide the children. The initiallyExpanded property must be non-null.
const

Properties

backgroundColor Color
The color to display behind the sublist when expanded.
final
children List<Widget>
The widgets that are displayed when the tile expands. [...]
final
initiallyExpanded bool
Specifies if the list tile is initially expanded (true) or collapsed (false, the default).
final
leading Widget
A widget to display before the title. [...]
final
onExpansionChanged ValueChanged<bool>
Called when the tile expands or collapses. [...]
final
title Widget
The primary content of the list item. [...]
final
trailing Widget
A widget to display instead of a rotating arrow icon.
final
hashCode int
The hash code for this object. [...]
read-only, inherited
key Key
Controls how one widget replaces another widget in the tree. [...]
final, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited

Methods

createState() → _ExpansionTileState
Creates the mutable state for this widget at a given location in the tree. [...]
createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree. [...]
inherited
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children. [...]
@protected, inherited
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. [...]
@pragma('vm:entry-point'), inherited
toDiagnosticsNode({String name, DiagnosticsTreeStyle style }) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by toStringDeep. [...]
inherited
toString({DiagnosticLevel minLevel: DiagnosticLevel.debug }) String
Returns 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 ==(dynamic other) bool
The equality operator. [...]
inherited