Sidebar menu and settings page skeleton
This commit is contained in:
@@ -0,0 +1,30 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:wetter/screens/second_route.dart';
|
||||||
|
|
||||||
|
class NavBar extends StatelessWidget {
|
||||||
|
const NavBar({Key? key}) : super(key: key);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Drawer(
|
||||||
|
child: ListView(
|
||||||
|
children: [
|
||||||
|
const DrawerHeader(child: Text("Weather")),
|
||||||
|
ListTile(
|
||||||
|
leading: const Icon(Icons.sunny),
|
||||||
|
title: const Text("Forecast"),
|
||||||
|
onTap: () {},
|
||||||
|
),
|
||||||
|
ListTile(
|
||||||
|
leading: const Icon(Icons.settings),
|
||||||
|
title: const Text("Settings"),
|
||||||
|
onTap: () {
|
||||||
|
Navigator.push(context,
|
||||||
|
MaterialPageRoute(builder: (context) => const Settings()));
|
||||||
|
},
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
+3
-1
@@ -1,5 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:wetter/components/compact_weather_data.dart';
|
import 'package:wetter/components/compact_weather_data.dart';
|
||||||
|
import 'package:wetter/components/main_menu.dart';
|
||||||
import 'package:wetter/models/daily_weather_model.dart';
|
import 'package:wetter/models/daily_weather_model.dart';
|
||||||
import 'package:wetter/services/brightsky_api_service.dart';
|
import 'package:wetter/services/brightsky_api_service.dart';
|
||||||
|
|
||||||
@@ -25,7 +26,7 @@ class _MyAppState extends State<MyApp> {
|
|||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return MaterialApp(
|
return MaterialApp(
|
||||||
title: 'Fetch Data Example',
|
title: 'Wetter',
|
||||||
theme: ThemeData(
|
theme: ThemeData(
|
||||||
primarySwatch: Colors.blue,
|
primarySwatch: Colors.blue,
|
||||||
textTheme: const TextTheme(
|
textTheme: const TextTheme(
|
||||||
@@ -38,6 +39,7 @@ class _MyAppState extends State<MyApp> {
|
|||||||
appBar: AppBar(
|
appBar: AppBar(
|
||||||
title: const Text('Wetter in Harburg'),
|
title: const Text('Wetter in Harburg'),
|
||||||
),
|
),
|
||||||
|
drawer: const NavBar(),
|
||||||
body: RefreshIndicator(
|
body: RefreshIndicator(
|
||||||
onRefresh: () {
|
onRefresh: () {
|
||||||
return Future(() {
|
return Future(() {
|
||||||
|
|||||||
@@ -0,0 +1,15 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
|
class Settings extends StatelessWidget {
|
||||||
|
const Settings({super.key});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Scaffold(
|
||||||
|
appBar: AppBar(
|
||||||
|
title: const Text('Settings'),
|
||||||
|
),
|
||||||
|
body: const Center(child: Text("Settings here")),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user