amap.dart 1.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import 'package:amap_flutter_map/amap_flutter_map.dart';
  2. import 'package:amap_flutter_base/amap_flutter_base.dart';
  3. import 'package:flutter/widgets.dart';
  4. import 'const_config.dart';
  5. // https://developer.amap.com/api/flutter/guide/map-flutter-plug-in/map-flutter-info
  6. class AMap extends StatelessWidget {
  7. late AMapController _mapController;
  8. final LatLng? position;
  9. final Map<String, Marker> _markers = Map<String, Marker>();
  10. AMap({Key? key, this.position }): super(key: key);
  11. void onMapCreated(AMapController controller) {
  12. _mapController = controller;
  13. }
  14. void _initMarkers() {
  15. if (null != position) {
  16. Marker marker = Marker(
  17. position: position!,
  18. icon: BitmapDescriptor.fromIconPath("images/locationImage.png")
  19. );
  20. _markers[marker.id] = marker;
  21. }
  22. }
  23. @override
  24. Widget build(BuildContext context) {
  25. _initMarkers();
  26. return AMapWidget(
  27. privacyStatement: ConstConfig.amapPrivacyStatement,
  28. apiKey: ConstConfig.amapApiKeys,
  29. markers: Set<Marker>.of(_markers.values),
  30. // 默认是邓州市中心
  31. initialCameraPosition: const CameraPosition(target: LatLng(32.687732, 112.08745)),
  32. );
  33. }
  34. }