import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import '../provider/app_provider.dart'; class AppDrawer extends StatelessWidget { const AppDrawer({super.key}); DrawerHeader buildDrawerHeader() { return DrawerHeader( decoration: BoxDecoration(color: Colors.blue.shade700), child: const Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ CircleAvatar( radius: 30, backgroundColor: Colors.white, child: Icon(Icons.flash_on, color: Colors.blue, size: 40), ), SizedBox(height: 10), Text( '闪灵', style: TextStyle( color: Colors.white, fontSize: 24, fontWeight: FontWeight.bold, ), ), Text( '记录每一刻的灵感', style: TextStyle(color: Colors.white70, fontSize: 14), ), ], ), ); } @override Widget build(BuildContext context) { return Drawer( child: ListView( padding: EdgeInsets.zero, children: [ // 抽屉头部 buildDrawerHeader(), // 菜单项 _buildDrawerItem( icon: Icons.flash_on, title: '闪灵', onTap: () { Navigator.pop(context); Provider.of(context, listen: false).changeTab(0); }, ), _buildDrawerItem( icon: Icons.checklist, title: '待办事项', onTap: () { Navigator.pop(context); Provider.of(context, listen: false).changeTab(1); }, ), _buildDrawerItem( icon: Icons.notifications, title: '提醒任务', onTap: () { Navigator.pop(context); Provider.of(context, listen: false).changeTab(2); }, ), const Divider(), _buildDrawerItem( icon: Icons.analytics, title: '统计', onTap: () { Navigator.pop(context); // 这里可以导航到统计页面 }, ), _buildDrawerItem( icon: Icons.archive, title: '归档', onTap: () { Navigator.pop(context); // 这里可以导航到归档页面 }, ), const Divider(), _buildDrawerItem( icon: Icons.settings, title: '设置', onTap: () { Navigator.pop(context); // 这里可以导航到设置页面 }, ), _buildDrawerItem( icon: Icons.help, title: '帮助与反馈', onTap: () { Navigator.pop(context); // 这里可以导航到帮助页面 }, ), ], ), ); } // 构建抽屉菜单项 Widget _buildDrawerItem({ required IconData icon, required String title, required VoidCallback onTap, }) { return ListTile( leading: Icon(icon, color: Colors.blue.shade600), title: Text(title), onTap: onTap, ); } }