private void Uninitialize(Android.Gms.Maps.GoogleMap nativeMap, Map map) { try { if (nativeMap == null) { System.Diagnostics.Debug.WriteLine($"Uninitialize failed - {nameof(nativeMap)} is null"); return; } if (map == null) { System.Diagnostics.Debug.WriteLine($"Uninitialize failed - {nameof(map)} is null"); return; } _uiSettingsLogic.Unregister(); map.OnSnapshot -= OnSnapshot; _cameraLogic.Unregister(); foreach (var logic in _logics) { logic.Unregister(nativeMap, map); } if (Map.IsUseCluster) { _clusterLogic.Unregister(nativeMap, map); } nativeMap.SetOnMapClickListener(null); nativeMap.SetOnMapLongClickListener(null); nativeMap.SetOnMyLocationButtonClickListener(null); nativeMap.MyLocationEnabled = false; nativeMap.Dispose(); } catch (System.Exception ex) { var message = ex.Message; System.Diagnostics.Debug.WriteLine($"Uninitialize failed. - {message}"); } }
protected virtual void OnMapReady(Android.Gms.Maps.GoogleMap nativeMap, Map map) { if (nativeMap != null) { _cameraLogic.Register(map, nativeMap); _uiSettingsLogic.Register(map, nativeMap); Map.OnSnapshot += OnSnapshot; nativeMap.SetOnMapClickListener(this); nativeMap.SetOnMapLongClickListener(this); nativeMap.SetOnMyLocationButtonClickListener(this); UpdateIsShowingUser(_uiSettingsLogic.MyLocationButtonEnabled); UpdateHasScrollEnabled(_uiSettingsLogic.ScrollGesturesEnabled); UpdateHasZoomEnabled(_uiSettingsLogic.ZoomControlsEnabled, _uiSettingsLogic.ZoomGesturesEnabled); UpdateHasRotationEnabled(_uiSettingsLogic.RotateGesturesEnabled); UpdateIsTrafficEnabled(); UpdateIndoorEnabled(); UpdateMapStyle(); UpdateMyLocationEnabled(); _uiSettingsLogic.Initialize(); SetMapType(); SetPadding(); //UpdateMaxZoom(); //UpdateMinZoom(); } _ready = true; if (_ready && _onLayout) { InitializeLogic(); } }
void CargamosMarcadores () { if (mMap == null) { mMap = _mapFragment.Map; if (mMap != null) { //Relizamos un ciclo para cargar todas las ciudades en nuestro mapa y le asignamos un puntero de color azul foreach (Ciudad_Marca ciudad in MisCiudades) { ciudad.Marcador=mMap.AddMarker(new MarkerOptions() .SetPosition(ciudad.Ubicacion) .SetTitle(ciudad.Nombre) .SetSnippet(ciudad.Descripcion) .InvokeIcon(BitmapDescriptorFactory.DefaultMarker(BitmapDescriptorFactory.HueAzure))); } mMap.SetOnMapLongClickListener (this); mMap.SetOnMarkerDragListener(this); //Le indicamos que deve de cargar un ventana de información personalizada mMap.SetInfoWindowAdapter (new CustomInfoWindowAdapter (this,MisCiudades)); //Ubicamos la cámara en un posición que se puedan ver las marcas mMap.MoveCamera(CameraUpdateFactory.NewLatLngZoom(new LatLng ( 21.12806,-101.689163), 6)); } } }