Modular menus

This commit is contained in:
='fauz
2025-05-07 14:18:26 +07:00
parent f47eb88980
commit ee9c2ce4a4
2 changed files with 35 additions and 48 deletions
+35 -44
View File
@@ -23,19 +23,6 @@ class _MainMenuState extends State<MainMenu> {
ProfileScreen(),
];
// void _onItemTapped(int index) {
// Future.delayed(Duration(milliseconds: 100), () {
// Navigator.pushReplacement(
// context,
// MaterialPageRoute(builder: (context) => _screens[index]),
// );
// });
// setState(() {
// selectedIndex = index;
// });
// }
@override
Widget build(BuildContext context) {
final Size size = MediaQuery.of(context).size;
@@ -44,37 +31,41 @@ class _MainMenuState extends State<MainMenu> {
return Container(
color: Colors.transparent,
padding: const EdgeInsets.symmetric(vertical: 20, horizontal: 5),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
mainAxisSize: MainAxisSize.min,
children: [
MenuButton(
label: "E-furibuddy",
icon: 'assets/icons/furrybuddy.svg',
onPress: () => _onItemTapped(context, 0),
isSelected: selectedIndex == 0,
),
MenuButton(
label: "Koleksi",
icon: 'assets/icons/Koleksi.svg',
onPress: () => _onItemTapped(context, 1),
isSelected: selectedIndex == 1,
),
SizedBox(width: 100),
MenuButton(
label: "Pustaka",
icon: 'assets/icons/Pustaka.svg',
onPress: () => _onItemTapped(context, 2),
isSelected: selectedIndex == 2,
),
MenuButton(
label: "Saya",
icon: 'assets/icons/Saya.svg',
onPress: () => _onItemTapped(context, 3),
isSelected: selectedIndex == 3,
),
],
),
child: _btns(context, selectedIndex),
);
}
Row _btns(BuildContext context, int selectedIndex) {
return Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
mainAxisSize: MainAxisSize.min,
children: [
MenuButton(
label: "E-furibuddy",
icon: 'assets/icons/furrybuddy.svg',
onPress: () => _onItemTapped(context, 0),
isSelected: selectedIndex == 0,
),
MenuButton(
label: "Koleksi",
icon: 'assets/icons/Koleksi.svg',
onPress: () => _onItemTapped(context, 1),
isSelected: selectedIndex == 1,
),
SizedBox(width: 100),
MenuButton(
label: "Pustaka",
icon: 'assets/icons/Pustaka.svg',
onPress: () => _onItemTapped(context, 2),
isSelected: selectedIndex == 2,
),
MenuButton(
label: "Saya",
icon: 'assets/icons/Saya.svg',
onPress: () => _onItemTapped(context, 3),
isSelected: selectedIndex == 3,
),
],
);
}