public void OnMapReady(GoogleMap map) { googleMap = map; googleMap.UiSettings.CompassEnabled = false; googleMap.UiSettings.MyLocationButtonEnabled = false; googleMap.UiSettings.MapToolbarEnabled = false; if (googleMap == null) return; googleMap.Clear (); try { MapsInitializer.Initialize (this); } catch (GooglePlayServicesNotAvailableException e) { Console.WriteLine ("Google Play Services not available:" + e); return; } if (assignment == null) return; var markerOptions = GetMarkerOptionsForAssignment (assignment); googleMap.AddMarker (markerOptions).ShowInfoWindow (); googleMap.CameraPosition.Target = markerOptions.Position; googleMap.MoveCamera (CameraUpdateFactory.NewLatLngZoom (markerOptions.Position, 15f)); }
async public void DrawMap() { if ( _stateClass._person != null) { _mapFragment = MapFragment.FragmentManager.FindFragmentById(Resource.Id.map) as MapFragment; _map = _mapFragment.Map; _map.Clear(); // Set the map type // show user location _map.MyLocationEnabled = true; // setup a location manager _locationManager = _mainActivity.GetSystemService (Context.LocationService) as LocationManager; // use a generic location provider instead Criteria locationCriteria = new Criteria(); locationCriteria.Accuracy = Accuracy.Coarse; locationCriteria.PowerRequirement = Power.Medium; await System.Threading.Tasks.Task.Delay(0); var geoCoder = new Geocoder(_mainActivity); try { Address address = this.GetAddressesFromLocation(_stateClass._person.Strasse,_stateClass._person.PLZ,_stateClass._person.Ort,_stateClass._person.Land); MarkerOptions marker1 = new MarkerOptions(); if (address != null) { marker1.SetPosition(new LatLng(address.Latitude, address.Longitude)); marker1.SetTitle(_stateClass._person.Name + " - " + _stateClass._person.Strasse + " - " + _stateClass._person.Ort + "- " + _stateClass._person.Umsatz); marker1.InvokeIcon(BitmapDescriptorFactory.DefaultMarker(BitmapDescriptorFactory.HueRed)); _Marker = _map.AddMarker(marker1); _map.AnimateCamera(CameraUpdateFactory.NewLatLngZoom(new Android.Gms.Maps.Model.LatLng(address.Latitude, address.Longitude), 9.0f)); } else { Android.Widget.Toast.MakeText(_mainActivity,_mainActivity.Resources.GetString(Resource.String.AddresseNichtGefunden), Android.Widget.ToastLength.Short).Show(); } _map.MarkerClick += (object sender, GoogleMap.MarkerClickEventArgs markerClickEventArgs) => { markerClickEventArgs.Handled = true; Marker marker = markerClickEventArgs.Marker; _map.AnimateCamera(CameraUpdateFactory.NewLatLngZoom(marker.Position, 13)); marker.ShowInfoWindow(); }; } catch(Exception ex) { DataAccessLayer.ExceptionWriter.WriteLogFile(ex); } } }