This commit is contained in:
2025-05-07 13:05:21 +07:00
parent 1fdcc3773d
commit c4c6097828
4 changed files with 165 additions and 150 deletions
+19 -39
View File
@@ -1,12 +1,12 @@
import 'package:flutter/material.dart';
import 'package:furibase/components/bottom_navbar.dart';
import 'package:furibase/components/menu_button.dart';
import 'package:furibase/components/scan_button.dart';
import 'package:furibase/screen/Home_screen.dart';
import 'package:furibase/screen/koleksi_screen.dart';
import 'package:furibase/screen/pustaka_screen.dart';
import 'package:furibase/screen/saya/profile_screen.dart';
import 'package:freekake/components/bottom_navbar.dart';
import 'package:freekake/components/menu_button.dart';
import 'package:freekake/components/scan_button.dart';
import 'package:freekake/providers/menu_selection_provider.dart';
import 'package:freekake/screen/Home_screen.dart';
import 'package:freekake/screen/koleksi_screen.dart';
import 'package:freekake/screen/pustaka_screen.dart';
import 'package:freekake/screen/saya/profile_screen.dart';
import 'package:provider/provider.dart';
class MainMenu extends StatefulWidget {
@@ -51,48 +51,28 @@ class _MainMenuState extends State<MainMenu> {
children: [
MenuButton(
label: "E-furibuddy",
icon: 'icons/furrybuddy.svg',
onPress:
() => {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => HomeScreen()),
),
},
icon: 'assets/icons/furrybuddy.svg',
onPress: () => _onItemTapped(context, 0),
isSelected: selectedIndex == 0,
),
MenuButton(
label: "Koleksi",
icon: 'icons/koleksi.svg',
onPress:
() => {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => KoleksiScreen()),
),
},
icon: 'assets/icons/Koleksi.svg',
onPress: () => _onItemTapped(context, 1),
isSelected: selectedIndex == 1,
),
SizedBox(width: 100),
MenuButton(
label: "Pustaka",
icon: 'icons/Pustaka.svg',
onPress:
() => {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => PustakaScreen()),
),
},
icon: 'assets/icons/Pustaka.svg',
onPress: () => _onItemTapped(context, 2),
isSelected: selectedIndex == 2,
),
MenuButton(
label: "Saya",
icon: 'icons/Saya.svg',
onPress:
() => {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => ProfileScreen()),
),
},
icon: 'assets/icons/Saya.svg',
onPress: () => _onItemTapped(context, 3),
isSelected: selectedIndex == 3,
),
],
),
+33 -18
View File
@@ -1,5 +1,6 @@
import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import 'package:freekake/screen/camera_screen.dart';
class ScanButton extends StatelessWidget {
const ScanButton({super.key});
@@ -7,26 +8,40 @@ class ScanButton extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Expanded(
child: Container(
decoration: BoxDecoration(
shape: BoxShape.circle,
color: const Color.fromARGB(223, 67, 63, 179),
),
padding: EdgeInsets.all(10),
child: IconButton(
icon: SvgPicture.asset(
'assets/icons/Scan.svg',
width: 60,
height: 60,
colorFilter: ColorFilter.mode(
Color.fromARGB(255, 217, 219, 227),
BlendMode.srcIn,
),
final screenWidth = MediaQuery.of(context).size.width;
// Skala berdasarkan lebar layar
final buttonSize = screenWidth * 0.20; // Adjust as needed
final iconSize = buttonSize * 0.7;
final padding = buttonSize * 0.15;
return Container(
width: buttonSize,
height: buttonSize,
// width: 76,
// height: 76,
decoration: BoxDecoration(
shape: BoxShape.circle,
color: const Color.fromARGB(223, 67, 63, 179),
),
padding: EdgeInsets.all(padding),
child: IconButton(
icon: SvgPicture.asset(
'assets/icons/Scan.svg',
width: iconSize,
height: iconSize,
colorFilter: ColorFilter.mode(
Color.fromARGB(255, 217, 219, 227),
BlendMode.srcIn,
),
onPressed: () {},
),
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => CameraScreen()),
);
},
),
);
}
}
}