Tabs class

Reusable Tabs navigation component in the Alter Design System.

Figma Specifications (Node 336:10524):

  • Variants:
    • type=Gray (336:10519): Hosts TabItem with type=Gray
    • type=White (336:10525): Hosts TabItem with type=White
  • Gap: 12px between tab items
  • Layout: Row (hug contents)
  • Child Component: TabItem (Node 336:10501)
Inheritance

Constructors

Tabs({Key? key, List<String> tabs = const ['Tab 1', 'Tab 2', 'Tab 3'], bool hasIcon = false, bool hasLabel = true, IconData? icon = Icons.face_5_outlined, List<IconData?>? icons, List<Widget?>? iconWidgets, int selectedIndex = 0, TabsType type = TabsType.gray, ValueChanged<int>? onTabSelected})
Creates a Tabs navigation instance.
const

Properties

hashCode → int
The hash code for this object.
no setterinherited
hasIcon → bool
Whether tab items display leading icons.
final
hasLabel → bool
Whether tab items display text labels.
final
icon → IconData?
Default leading icon for all tabs when hasIcon is true.
final
icons → List<IconData?>?
Optional per-tab icon data list.
final
iconWidgets → List<Widget?>?
Optional per-tab custom icon widget list.
final
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
onTabSelected → ValueChanged<int>?
Callback executed when a tab is selected.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
selectedIndex → int
Index of the currently active tab.
final
tabs → List<String>
List of tab label strings.
final
type → TabsType
Visual theme style type.
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

Constants

version → const String
Component version for reference. v1.1.0: Added hasIcon (default false), hasLabel (default true), icon, icons, and iconWidgets to propagate TabItem v1.1.0 capabilities through Tabs. v1.0.0: Initial release matching Figma Node 336:10524.