Merge branch 'alis_dev_branch' into 'main'

AppBar Version 1

See merge request brausjonas/mensaapp!2
This commit is contained in:
Jonas Braus
2024-11-21 11:49:53 +00:00
5 changed files with 111 additions and 54 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

+109 -53
View File
@@ -20,24 +20,22 @@ class MyApp extends StatelessWidget {
) )
], ],
child: MaterialApp( child: MaterialApp(
theme: ThemeData( theme: ThemeData(
colorScheme: const ColorScheme( colorScheme: const ColorScheme(
primary: Color.fromRGBO(236, 92, 61, 1), primary: Color.fromRGBO(236, 92, 61, 1),
onPrimary: Color.fromRGBO(240, 240, 240, 1), onPrimary: Color.fromRGBO(240, 240, 240, 1),
secondary: Color.fromRGBO(203, 203, 203, 1), secondary: Color.fromRGBO(203, 203, 203, 1),
onSecondary: Color.fromRGBO(60, 60, 60, 1), onSecondary: Color.fromRGBO(60, 60, 60, 1),
error: Colors.red, error: Colors.red,
onError: Colors.white, onError: Colors.white,
surface: Colors.white, surface: Colors.white,
onSurface: Color.fromRGBO(60, 60, 60, 1), onSurface: Color.fromRGBO(60, 60, 60, 1),
brightness: Brightness.light, brightness: Brightness.light,
tertiary: Color.fromRGBO(251, 216, 17, 0), tertiary: Color.fromRGBO(251, 216, 17, 0),
onTertiary: Color.fromRGBO(60, 60, 60, 1) onTertiary: Color.fromRGBO(60, 60, 60, 1)),
useMaterial3: true,
), ),
useMaterial3: true, home: const MyHome()),
),
home: const MyHome()
),
); );
} }
} }
@@ -48,44 +46,102 @@ class MyHome extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Scaffold( return Scaffold(
appBar: AppBar(), appBar: AppBar(
body: Consumer<PageProvider>( leading: IconButton(
builder: (context, pageProvider, child) { icon: Icon(
return pageProvider.pages[pageProvider.selectedPage]; Icons.home,
}, size: 36,
), color: Theme.of(context).colorScheme.onPrimary,
bottomNavigationBar: Padding( ),
padding: EdgeInsets.all(5), onPressed: () {
child: GNav( // Aktion für diesen Button
onTabChange: (index) {
Provider.of<PageProvider>(context, listen: false).changePage(index);
}, },
gap: 8,
style: GnavStyle.google,
backgroundColor: Theme.of(context).colorScheme.surface,
color: Theme.of(context).colorScheme.onSurface,
activeColor: Theme.of(context).colorScheme.onPrimary,
tabBackgroundColor: Theme.of(context).colorScheme.primary,
tabs: const [
GButton(
icon: Icons.fastfood_outlined,
text: "Essen",
),GButton(
icon: Icons.landscape,
text: "Ambiente",
),GButton(
icon: Icons.mood,
text: "Service",
),GButton(
icon: Icons.feedback,
text: "Verschläge",
), GButton(
icon: Icons.comment,
text: "Verbesserungen",
),
],
), ),
) title: Container(
height: 40,
decoration: BoxDecoration(
color: Theme.of(context)
.colorScheme
.primaryContainer, // Hintergrundfarbe des Textfelds
borderRadius: BorderRadius.circular(15),
),
alignment: Alignment.centerLeft,
child: Text(
"Placeholder",
style: TextStyle(
color: Theme.of(context).colorScheme.onPrimary,
fontWeight: FontWeight.bold,
),
),
),
backgroundColor: Theme.of(context).colorScheme.primary,
actions: [
IconButton(
icon: Image.asset(
'assets/flags/de.png',
width: 34,
height: 24,
fit: BoxFit.cover,
), // Erster Button rechts
onPressed: () {
// Aktion für diesen Button
},
),
IconButton(
icon: Image.asset(
'assets/flags/fr.png',
width: 34,
height: 24,
fit: BoxFit.cover,
), // Zweiter Button rechts
onPressed: () {
// Aktion für diesen Button
},
),
IconButton(
icon: Image.asset(
'assets/flags/en.png',
width: 34,
height: 24,
fit: BoxFit.cover,
), // Dritter Button rechts
onPressed: () {
// Aktion für diesen Button
},
),
],
),
body: Container(),
bottomNavigationBar: GNav(
onTabChange: (index) {},
gap: 8,
backgroundColor: Theme.of(context).colorScheme.secondary,
color: Theme.of(context).colorScheme.onSurface,
activeColor: Theme.of(context).colorScheme.onPrimary,
tabBackgroundColor: Theme.of(context).colorScheme.primary,
tabs: const [
GButton(
icon: Icons.food_bank,
text: "Essen",
),
GButton(
icon: Icons.room,
text: "Ambiente",
),
GButton(
icon: Icons.person,
text: "Service",
),
GButton(
icon: Icons.question_mark,
text: "Verschläge",
),
GButton(
icon: Icons.add_rounded,
text: "Verbesserungen",
),
],
),
); );
} }
} }
+2 -1
View File
@@ -54,7 +54,8 @@ dev_dependencies:
# The following section is specific to Flutter packages. # The following section is specific to Flutter packages.
flutter: flutter:
assets:
- assets/flags/
# The following line ensures that the Material Icons font is # The following line ensures that the Material Icons font is
# included with your application, so that you can use the icons in # included with your application, so that you can use the icons in
# the material Icons class. # the material Icons class.