SAnimatedTabs class

A professional, highly customizable animated tab switcher widget that follows Material Design 3 principles and provides smooth animations.

Inheritance
Available extensions

Constructors

SAnimatedTabs({Key? key, required void onTabSelected(int index), required List<String> tabTitles, List<IconData?>? tabIcons, List<String?>? tabBadges, TextStyle? activeTextStyle, TextStyle? inactiveTextStyle, double? height, double? width, Color? backgroundColor, Color? activeColor, double borderRadius = 8.0, Duration animationDuration = const Duration(milliseconds: 300), Curve animationCurve = Curves.easeOutQuart, int initialIndex = 0, EdgeInsets padding = const EdgeInsets.all(3.0), bool enableHapticFeedback = true, bool enableElevation = false, double elevation = 1.0, TabTextSize textSize = TabTextSize.medium, TabColorScheme? colorScheme, bool enableEnhancedAnimations = true, TabAnimationStyle animationStyle = TabAnimationStyle.smooth})
const

Properties

activeColor Color?
Color of the active tab indicator
final
activeTextStyle TextStyle?
Active tab text style
final
animationCurve Curve
Animation curve
final
animationDuration Duration
Animation duration
final
animationStyle TabAnimationStyle
Animation style preset
final
backgroundColor Color?
Background color of the tab container
final
borderRadius double
Border radius of the tab container
final
colorScheme TabColorScheme?
Professional color scheme preset
final
elevation double
Custom elevation for the container
final
enableElevation bool
Enable elevation shadow
final
enableEnhancedAnimations bool
Enable enhanced animations with bounce and scale effects
final
enableHapticFeedback bool
Enable haptic feedback on tap
final
hashCode int
The hash code for this object.
no setterinherited
height double?
Tab container height
final
inactiveTextStyle TextStyle?
Inactive tab text style
final
initialIndex int
Initial selected tab index
final
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
onTabSelected → void Function(int index)
Callback function when tab is selected
final
padding EdgeInsets
Padding inside the tab container
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
tabBadges List<String?>?
Optional badge values for each tab (e.g., unread counts). A null or empty string means no badge for that tab.
final
tabIcons List<IconData?>?
Optional icons for each tab, shown before the title text.
final
tabTitles List<String>
List of tab titles
final
textSize TabTextSize
Tab text size preset
final
width double?
Tab container width (defaults to full width if null)
final

Methods

addMaterialWidget() Material

Available on Widget, provided by the GenericExtensions extension

addTooltipWidget(String toolTip) Tooltip

Available on Widget, provided by the GenericExtensions extension

animate({Key? key, List<Effect>? effects, AnimateCallback? onInit, AnimateCallback? onPlay, AnimateCallback? onComplete, bool? autoPlay, Duration? delay, AnimationController? controller, Adapter? adapter, double? target, double? value}) → Animate

Available on Widget, provided by the AnimateWidgetExtensions extension

Wraps the target Widget in an Animate instance, and returns the instance for chaining calls. Ex. myWidget.animate() is equivalent to Animate(child: myWidget).
borderRadius([BorderRadiusGeometry? borderRadius]) Widget

Available on Widget, provided by the GenericExtensions extension

boxDecoration([BoxDecoration? boxDecoration]) Widget

Available on Widget, provided by the GenericExtensions extension

colorFilter([ColorFilter? colorFilter]) Widget

Available on Widget, provided by the GenericExtensions extension

set parent widget in center
createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() State<SAnimatedTabs>
Creates the mutable state for this widget at a given location in the tree.
override
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