flutter3空页面加导航
import 'package:flutter/material.dart'; void main() { runApp(const GoWaterMyApp()); } class GoWaterMyApp extends StatelessWidget { const GoWaterMyApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp( title: 'GoWater', theme: ThemeData( colorScheme: ColorScheme.fromSeed(seedColor: Colors.lightBlue), useMaterial3: true, ), home: const MyHomePage(title: '桶装水自动配送系统'), ); } } class MyHomePage extends StatefulWidget { const MyHomePage({super.key, required this.title}); final String title; @override State<MyHomePage> createState() => _MyHomePageState(); } class _MyHomePageState extends State<MyHomePage> { late int _selectedIndex = 0; @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( backgroundColor: Theme.of(context).colorScheme.inversePrimary, title: Text(widget.title), ), body: SafeArea( child: Container(), ), //导航开始 bottomNavigationBar: BottomNavigationBar( selectedItemColor: Colors.lightBlue, currentIndex: _selectedIndex, onTap: (index) => setState(() { _selectedIndex = index; }), //如果超过宽度则必须加下面这句 type: BottomNavigationBarType.fixed, items: const [ BottomNavigationBarItem( icon: Icon(Icons.list), label: '历史', ), BottomNavigationBarItem( icon: Icon(Icons.widgets), label: '订水', ), BottomNavigationBarItem(icon: Icon(Icons.history), label: ('发现')), BottomNavigationBarItem( icon: Icon(Icons.settings), label: '自己', ), ], ), //导航结束 ); } }