From 5ce05fcc954c432f25f3c61ba108566ffb195e6f Mon Sep 17 00:00:00 2001 From: Ali Date: Thu, 21 Nov 2024 14:00:10 +0100 Subject: [PATCH] Pages Added + Provider Function Extented Missing Pages were added (currently no content) Provider changes the title to the right one --- lib/main.dart | 41 ++++++++++++++------------ lib/pages/pageAnmerkungen.dart | 10 +++++++ lib/pages/pageService.dart | 10 +++++++ lib/pages/pageSpezielleErnaehrung.dart | 10 +++++++ lib/providers/pageProvider.dart | 19 ++++++++++-- 5 files changed, 69 insertions(+), 21 deletions(-) create mode 100644 lib/pages/pageAnmerkungen.dart create mode 100644 lib/pages/pageService.dart create mode 100644 lib/pages/pageSpezielleErnaehrung.dart diff --git a/lib/main.dart b/lib/main.dart index f084cdb..30bc942 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -46,6 +46,7 @@ class MyHome extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( + appBar: AppBar( leading: IconButton( icon: Icon( @@ -57,22 +58,24 @@ class MyHome extends StatelessWidget { // Aktion für diesen Button }, ), - 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, - ), - ), + title: Consumer( // Consumer verwenden, um den dynamischen Titel anzuzeigen + builder: (context, pageProvider, child) { + return Container( + height: 40, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.primaryContainer, + borderRadius: BorderRadius.circular(15), + ), + alignment: Alignment.centerLeft, + child: Text( + pageProvider.selectedPageTitle, // Hier wird der dynamische Titel angezeigt + style: TextStyle( + color: Theme.of(context).colorScheme.onPrimary, + fontWeight: FontWeight.bold, + ), + ), + ); + }, ), backgroundColor: Theme.of(context).colorScheme.primary, actions: [ @@ -140,10 +143,10 @@ class MyHome extends StatelessWidget { text: "Service", ),GButton( icon: Icons.feedback, - text: "Verschläge", + text: "Anmerkungen", ), GButton( - icon: Icons.comment, - text: "Verbesserungen", + icon: Icons.grass, + text: "Spezielle Ernährung", ), ], ), diff --git a/lib/pages/pageAnmerkungen.dart b/lib/pages/pageAnmerkungen.dart new file mode 100644 index 0000000..f38b6d3 --- /dev/null +++ b/lib/pages/pageAnmerkungen.dart @@ -0,0 +1,10 @@ +import 'package:flutter/material.dart'; + +class PageAnmerkungen extends StatelessWidget { + const PageAnmerkungen({super.key}); + + @override + Widget build(BuildContext context) { + return const Placeholder(); + } +} diff --git a/lib/pages/pageService.dart b/lib/pages/pageService.dart new file mode 100644 index 0000000..b5e5973 --- /dev/null +++ b/lib/pages/pageService.dart @@ -0,0 +1,10 @@ +import 'package:flutter/material.dart'; + +class PageService extends StatelessWidget { + const PageService({super.key}); + + @override + Widget build(BuildContext context) { + return const Placeholder(); + } +} diff --git a/lib/pages/pageSpezielleErnaehrung.dart b/lib/pages/pageSpezielleErnaehrung.dart new file mode 100644 index 0000000..652540a --- /dev/null +++ b/lib/pages/pageSpezielleErnaehrung.dart @@ -0,0 +1,10 @@ +import 'package:flutter/material.dart'; + +class PageSpezielleErnaehrung extends StatelessWidget { + const PageSpezielleErnaehrung({super.key}); + + @override + Widget build(BuildContext context) { + return const Placeholder(); + } +} diff --git a/lib/providers/pageProvider.dart b/lib/providers/pageProvider.dart index a81044d..63b43d5 100644 --- a/lib/providers/pageProvider.dart +++ b/lib/providers/pageProvider.dart @@ -1,16 +1,31 @@ import 'package:flutter/material.dart'; import 'package:mensaapp/pages/pageAmbiente.dart'; import 'package:mensaapp/pages/pageEssen.dart'; +import 'package:mensaapp/pages/pageService.dart'; +import 'package:mensaapp/pages/pageAnmerkungen.dart'; +import 'package:mensaapp/pages/pageSpezielleErnaehrung.dart'; class PageProvider extends ChangeNotifier { int selectedPage = 0; - + String selectedPageTitle = ""; List pages = [ const PageEssen(), - const PageAmbiente() + const PageAmbiente(), + const PageService(), + const PageAnmerkungen(), + const PageSpezielleErnaehrung() + ]; + + List titleString = [ + "Essen", + "Ambiente", + "Service", + "Anmerkungen", + "Spezielle Ernährung" ]; void changePage(int index) { + selectedPageTitle = titleString[index]; selectedPage = index; notifyListeners(); }