Essen auswählen

Stand jetzt: essen von der Website gezogen: Schöner: Warten auf API-Key
This commit is contained in:
Jonas Braus
2024-11-24 14:35:44 +01:00
parent d3a211efb9
commit f870be4af7
7 changed files with 243 additions and 94 deletions
+65
View File
@@ -0,0 +1,65 @@
import 'package:flutter/material.dart';
import 'package:mensaapp/modules/fetchMenu.dart';
import 'package:mensaapp/providers/pageProvider.dart';
import 'package:provider/provider.dart';
class PageEssenSelect extends StatelessWidget {
const PageEssenSelect({super.key});
@override
Widget build(BuildContext context) {
List<String> menus = [];
Future<void> fetchMenu() async {
menus = await FetchMenu.get();
}
return FutureBuilder(
future: fetchMenu(),
builder: (context, snapshot) {
return Scaffold(
body: Stack(
children: [
Container(
width: 1600,
height: 750,
decoration: BoxDecoration(
image: DecorationImage(
image: AssetImage("assets/backgrounds/Essen.jpg"),
fit: BoxFit.cover, // Deckt den gesamten Bildschirm ab
colorFilter: ColorFilter.mode(
Colors.white.withOpacity(0.2),
BlendMode.dstATop,
),
),
),
),
Center(
child: Container(
child: Wrap(
direction: Axis.horizontal,
alignment: WrapAlignment.center,
runSpacing: 50,
spacing: 50,
children: [
for (int i = 0; i < menus.length; i++)
FilledButton.icon(
style: ButtonStyle(padding: WidgetStatePropertyAll(EdgeInsets.all(60))),
icon: const Icon(Icons.fastfood_outlined),
label: Text("Essen ${i + 1}: ${menus[i]}", style: TextStyle(fontSize: 23),),
onPressed: () {
Provider.of<PageProvider>(context, listen: false).setSelectedEssen(i + 1, "Essen ${i + 1}: ${menus[i]}");
},
)
],
),
),
)
],
),
);
},
);
}
}