NovaListTile class
A consistent, theme-aware list item widget for Nova UI.
Wraps a leading widget (avatar/icon), title, subtitle, and trailing widget with consistent spacing, tap ripple, and divider support.
Example:
// Simple
NovaListTile(
title: 'John Doe',
subtitle: 'Software Engineer',
leading: NovaAvatar(name: 'John Doe'),
onTap: () {},
)
// With trailing chevron
NovaListTile(
title: 'Settings',
leadingIcon: Icons.settings_outlined,
showChevron: true,
onTap: () {},
)
// With trailing widget + divider
NovaListTile(
title: 'Notifications',
subtitle: 'Push notifications enabled',
leadingIcon: Icons.notifications_outlined,
trailing: NovaSwitch(value: true, onChanged: (v) {}),
showDivider: true,
)
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatelessWidget
- NovaListTile
Constructors
- NovaListTile({Key? key, required String title, String? subtitle, Widget? leading, IconData? leadingIcon, Widget? trailing, bool showChevron = false, VoidCallback? onTap, VoidCallback? onLongPress, bool enabled = true, bool showDivider = false, bool dense = false, Color? titleColor, Color? subtitleColor, EdgeInsetsGeometry? padding})
-
Creates a NovaListTile widget.
const
Properties
- dense → bool
-
When true, uses reduced vertical padding.
final
- enabled → bool
-
When false, tile is non-interactive and visually dimmed.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- leading → Widget?
-
Leading widget — typically NovaAvatar or an icon container.
Takes priority over leadingIcon if both provided.
final
- leadingIcon → IconData?
-
Simple leading icon — shown in a rounded container.
Ignored if leading is provided.
final
- onLongPress → VoidCallback?
-
Called when the tile is long pressed.
final
- onTap → VoidCallback?
-
Called when the tile is tapped.
final
- padding → EdgeInsetsGeometry?
-
Override content padding.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- showChevron → bool
-
When true and trailing is null, shows a chevron arrow.
final
- showDivider → bool
-
When true, shows a divider below the tile.
final
- subtitle → String?
-
Secondary subtitle text shown below title.
final
- subtitleColor → Color?
-
Override subtitle text color.
final
- title → String
-
Primary title text.
final
- titleColor → Color?
-
Override title text color.
final
- trailing → Widget?
-
Trailing widget — e.g. NovaSwitch, NovaBadge, or text.
final
Methods
-
build(
BuildContext context) → Widget -
Describes the part of the user interface represented by this widget.
override
-
createElement(
) → StatelessElement -
Creates a StatelessElement to manage this widget's location in the tree.
inherited
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent 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, int wrapWidth = 65}) → 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.
inherited