Files
flisp_app/lib/layout/main_screen.dart
2025-11-06 18:52:05 +08:00

76 lines
2.1 KiB
Dart

import 'package:flisp_app/layout/app_drawer.dart';
import 'package:flisp_app/pages/flash_page.dart';
import 'package:flisp_app/pages/notes_Page.dart';
import 'package:flisp_app/pages/reminders_page.dart';
import 'package:flisp_app/pages/todo_page.dart';
import 'package:flisp_app/provider/app_provider.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
class MainScreen extends StatelessWidget {
const MainScreen({super.key});
@override
Widget build(BuildContext context) {
return Consumer<AppProvider>(
builder: (context, appState, child) {
return Scaffold(
// 侧边抽屉菜单
drawer: const AppDrawer(),
// 顶部导航栏
appBar: AppBar(
title: const Text('闪灵'),
backgroundColor: Colors.blue,
foregroundColor: Colors.white,
elevation: 0,
),
// 主体内容
body: _buildPage(appState.currentIndex),
// 底部导航栏
bottomNavigationBar: BottomNavigationBar(
currentIndex: appState.currentIndex,
onTap: (index) => appState.changeTab(index),
type: BottomNavigationBarType.fixed,
items: const [
BottomNavigationBarItem(
icon: Icon(Icons.flash_on),
label: '闪灵',
),
BottomNavigationBarItem(
icon: Icon(Icons.note),
label: '笔记',
),
BottomNavigationBarItem(
icon: Icon(Icons.checklist),
label: '待办',
),
BottomNavigationBarItem(
icon: Icon(Icons.notifications),
label: '提醒',
),
],
),
);
},
);
}
// 根据索引构建对应页面
Widget _buildPage(int index) {
switch (index) {
case 0:
return const FlashPage();
case 1:
return const NotesPage();
case 2:
return const TodoPage();
case 3:
return const RemindersPage();
default:
return const FlashPage();
}
}
}