NavigationScreen constructor

const NavigationScreen({
  1. Key? key,
  2. PylonBuilder? sidebarHeader,
  3. double? railRightPadding,
  4. int index = 0,
  5. double sidebarPrefixPadding = 8,
  6. double sidebarWidth = 250,
  7. double? railTopPadding,
  8. double? sidebarSpacing,
  9. bool? drawerTransformsBackdrop,
  10. ValueChanged<int>? onIndexChanged,
  11. PylonBuilder? sidebarFooter,
  12. required List<NavItem> tabs,
  13. Widget customNavigationBuilder(
    1. BuildContext,
    2. NavigationScreen,
    3. int
    )?,
  14. bool? endSide,
  15. NavigationType? type,
})

Constructs a NavigationScreen with required tabs and optional customizations.

The tabs list defines navigable sections via NavItem builders, with index setting the initial active tab. Callbacks like onIndexChanged enable parent coordination, while theme overrides (e.g., sidebarSpacing, railRightPadding) allow layout tweaks. For custom UIs, provide customNavigationBuilder; otherwise, defaults to NavigationType from ArcaneTheme. Supports drawer overlays with drawerTransformsBackdrop for backdrop effects during Navigator interactions.

Implementation

const NavigationScreen(
    {super.key,
    this.sidebarHeader,
    this.railRightPadding,
    this.index = 0,
    this.sidebarPrefixPadding = 8,
    this.sidebarWidth = 250,
    this.railTopPadding,
    this.sidebarSpacing,
    this.drawerTransformsBackdrop,
    this.onIndexChanged,
    this.sidebarFooter,
    required this.tabs,
    this.customNavigationBuilder,
    this.endSide,
    this.type});