Files
ingtrakapp/lib/screens/main_shell.dart
T
2026-09-10 00:35:54 +02:00

62 lines
1.6 KiB
Dart

/// Host scaffold: Home, Overview, Look ahead. Settings lives in the app-bar gear.
library;
import 'package:flutter/material.dart';
import '../widgets/shell_tab_scope.dart';
import 'home_screen.dart';
import 'look_ahead_screen.dart';
import 'overview_screen.dart';
class MainShell extends StatefulWidget {
const MainShell({super.key});
@override
State<MainShell> createState() => _MainShellState();
}
class _MainShellState extends State<MainShell> {
int _index = 0;
static const _pages = [
HomeScreen(),
OverviewScreen(),
LookAheadScreen(),
];
@override
Widget build(BuildContext context) {
return ShellTabScope(
index: _index,
child: Scaffold(
body: IndexedStack(
index: _index,
children: _pages,
),
bottomNavigationBar: NavigationBar(
selectedIndex: _index,
onDestinationSelected: (index) => setState(() => _index = index),
labelBehavior: NavigationDestinationLabelBehavior.alwaysShow,
destinations: const [
NavigationDestination(
icon: Icon(Icons.home_outlined),
selectedIcon: Icon(Icons.home),
label: 'Home',
),
NavigationDestination(
icon: Icon(Icons.insights_outlined),
selectedIcon: Icon(Icons.insights),
label: 'Overview',
),
NavigationDestination(
icon: Icon(Icons.event_repeat_outlined),
selectedIcon: Icon(Icons.event_repeat),
label: 'Look ahead',
),
],
),
),
);
}
}