ExpansionTile constructor Null safety
- {Key? key,
- Widget? leading,
- required Widget title,
- Widget? subtitle,
- ValueChanged<
bool> ? onExpansionChanged, - List<
Widget> children = const <Widget>[], - Widget? trailing,
- bool initiallyExpanded = false,
- bool maintainState = false,
- EdgeInsetsGeometry? tilePadding,
- CrossAxisAlignment? expandedCrossAxisAlignment,
- Alignment? expandedAlignment,
- EdgeInsetsGeometry? childrenPadding,
- Color? backgroundColor,
- Color? collapsedBackgroundColor,
- Color? textColor,
- Color? collapsedTextColor,
- Color? iconColor,
- Color? collapsedIconColor,
- ListTileControlAffinity? controlAffinity}
Creates a single-line ListTile with an expansion arrow icon that expands or collapses the tile to reveal or hide the children. The initiallyExpanded property must be non-null.
Implementation
const ExpansionTile({
super.key,
this.leading,
required this.title,
this.subtitle,
this.onExpansionChanged,
this.children = const <Widget>[],
this.trailing,
this.initiallyExpanded = false,
this.maintainState = false,
this.tilePadding,
this.expandedCrossAxisAlignment,
this.expandedAlignment,
this.childrenPadding,
this.backgroundColor,
this.collapsedBackgroundColor,
this.textColor,
this.collapsedTextColor,
this.iconColor,
this.collapsedIconColor,
this.controlAffinity,
}) : assert(initiallyExpanded != null),
assert(maintainState != null),
assert(
expandedCrossAxisAlignment != CrossAxisAlignment.baseline,
'CrossAxisAlignment.baseline is not supported since the expanded children '
'are aligned in a column, not a row. Try to use another constant.',
);