SubZeroHeader class
A responsive header component following SubZero 2.0 Design System.
Features:
- Two variants: Primary (burgundy) and Surface (white)
- Distinctive angled/clipped corner design
- Responsive layout (mobile/tablet/desktop)
- Scrolled state with elevated shadow
- Flexible slots for branding, navigation, and actions
Example usage:
SubZeroHeader(
variant: SubZeroHeaderVariant.primary,
brandName: 'AXIS BANK',
logo: Image.asset('assets/logo.png'),
isScrolled: _isScrolled,
navigationItems: [
SubZeroHeaderNavItem(label: 'Home', onTap: () {}),
SubZeroHeaderNavItem(label: 'Products', onTap: () {}),
],
actions: [
IconButton(icon: Icon(Icons.notifications), onPressed: () {}),
],
)
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatelessWidget
- SubZeroHeader
- Available extensions
Constructors
-
SubZeroHeader({Key? key, SubZeroHeaderVariant variant = SubZeroHeaderVariant.primary, Widget? logo, String? brandName, String? productName, List<
Widget> actions = const [], bool isScrolled = false, VoidCallback? onMenuPressed, double? height, bool showAngledEdge = true, VoidCallback? onLogoTap}) -
const
Properties
-
actions
→ List<
Widget> -
Action widgets on the right (icons, avatar, etc.)
final
- brandName → String?
-
Main brand name (e.g., "AXIS BANK")
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- height → double?
-
Custom height (defaults based on variant and screen size)
final
- isScrolled → bool
-
Whether the page has been scrolled (adds elevation)
final
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- logo → Widget?
-
Logo widget (typically an Image or Icon)
final
-
Navigation items for desktop view
final
- onLogoTap → VoidCallback?
-
Callback when logo/brand is tapped
final
- onMenuPressed → VoidCallback?
-
Callback for mobile menu button
final
- productName → String?
-
Product/sub-brand name (e.g., "PRODUCT NAME" in "open | PRODUCT NAME")
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- showAngledEdge → bool
-
Whether to show the angled/clipped edge
final
- variant → SubZeroHeaderVariant
-
Header style variant
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
-
withCountBadge(
{required int count, int maxCount = 99, SubZeroBadgeStyle style = SubZeroBadgeStyle.filled, SubZeroBadgeSize size = SubZeroBadgeSize.medium, SubZeroBadgeAlignment alignment = const SubZeroBadgeAlignment(), bool show = true}) → Widget -
Available on Widget, provided by the SubZeroBadgeExtension extension
Wrap this widget with a count badge -
withDotBadge(
{SubZeroBadgeStyle style = SubZeroBadgeStyle.filled, SubZeroBadgeSize size = SubZeroBadgeSize.medium, SubZeroBadgeAlignment alignment = const SubZeroBadgeAlignment(), bool show = true}) → Widget -
Available on Widget, provided by the SubZeroBadgeExtension extension
Wrap this widget with a dot badge
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited