import 'package:flutter/material.dart'; import 'package:flutter_map/flutter_map.dart'; import 'package:latlong2/latlong.dart'; class TestFlutterMap extends StatefulWidget { const TestFlutterMap({super.key}); @override State createState() => _TestFlutterMapState(); } class _TestFlutterMapState extends State { late final MapController _mapController; double _rotation = 0; static const _london = LatLng(51.5, -0.09); static const _paris = LatLng(48.8566, 2.3522); static const _dublin = LatLng(53.3498, -6.2603); static const _kantor = LatLng(-7.538761, 110.795699); static const _markers = [ Marker( width: 10, height: 10, point: _kantor, child: FlutterLogo( key: ValueKey('green'), ), ), ]; @override void initState() { super.initState(); _mapController = MapController(); } @override Widget build(BuildContext context) { return FlutterMap( mapController: _mapController, options: MapOptions( initialCenter: LatLng(-7.538761, 110.795699), initialZoom: 5, maxZoom: 20, minZoom: 3, ), children: [ // openStreetMapTileLayer, TileLayer( urlTemplate: 'https://tile.openstreetmap.org/{z}/{x}/{y}.png', userAgentPackageName: 'dev.fleaflet.flutter_map.example', subdomains: ['a', 'b', 'c'] // Use the recommended flutter_map_cancellable_tile_provider package to // support the cancellation of loading tiles. // tileProvider: , ), const MarkerLayer( markers: _markers, ), ], ); } }