Stylish Tab Bar
A horizontally scrollable row of tab-like chips for switching between views within a page. Each tab is rendered as a StylishChip with animated selection, making this a lightweight alternative to StylishConnectedSegmentedControl when the number of tabs is dynamic or exceeds the screen width.
Unlike StylishConnectedSegmentedControl, tabs are not visually connected — each chip has its own rounded outline and spacing.
Parameters
The tab labels to display.
The zero-based index of the currently selected tab.
Called with the new index when a tab is tapped.
Modifier applied to the outer Row.
TextStyle for each tab label, forwarded to StylishChip. Defaults to MaterialTheme.typography.labelLarge.
Background color of the tab bar surface. Defaults to MaterialTheme.colorScheme.surfaceContainer.
Container color of the selected tab. When null, StylishChip's default is used.
Content color of the selected tab. When null, StylishChip's default is used.
Container color of unselected tabs. When null, StylishChip's default is used.
Content color of unselected tabs. When null, StylishChip's default is used.
When false, every tab is disabled: chips ignore pointer input and render in their disabled colors. Defaults to true.
The ScrollState of the tab row. When selectedIndex changes, the row animates to scroll the selected tab into view.
Selection feedback relies on the StylishChip color animation — there is deliberately no sliding indicator, since each chip already animates its container/content colors (see com.segnities007.stylishui.components.atoms.StylishChip). Tab icons are decorative and carry no content description.
Accessibility
Selection, enabling, and disabled semantics are provided by the underlying StylishChip. The auto-scroll that brings the selected tab into view snaps instead of animating when the system reduced-motion setting is active (see isStylishReducedMotionEnabled).