48 lines
1.2 KiB
Dart
48 lines
1.2 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter_map/flutter_map.dart';
|
|
import 'package:latlong2/latlong.dart';
|
|
import 'AppDrawer.dart';
|
|
|
|
class MapPage extends StatefulWidget {
|
|
const MapPage({super.key});
|
|
|
|
@override
|
|
State<StatefulWidget> createState() => _MapPageState();
|
|
}
|
|
|
|
class _MapPageState extends State<MapPage> {
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return Scaffold(
|
|
appBar: AppBar(
|
|
title: Text('Map Example'),
|
|
),
|
|
drawer: AppDrawer(),
|
|
body: FlutterMap(
|
|
options: MapOptions(
|
|
initialCenter: LatLng(51.509364, -0.128928), // London
|
|
initialZoom: 9.2,
|
|
),
|
|
children: [
|
|
TileLayer(
|
|
urlTemplate: 'https://tile.openstreetmap.org/{z}/{x}/{y}.png',
|
|
userAgentPackageName: 'com.example.app',
|
|
),
|
|
MarkerLayer(
|
|
markers: [
|
|
Marker(
|
|
point: LatLng(51.509364, -0.128928),
|
|
child: Icon(
|
|
Icons.location_on,
|
|
color: Colors.red,
|
|
size: 40,
|
|
),
|
|
),
|
|
],
|
|
),
|
|
],
|
|
),
|
|
);
|
|
}
|
|
} |