void OnOverlayTapped(object sender, GMSOverlayEventEventArgs e) { var targetOuterItem = GetItems(Map).FirstOrDefault( outerItem => object.ReferenceEquals(outerItem.NativeObject, e.Overlay)); targetOuterItem?.SendTap(); }
void OnTappedOverlay (object sender, GMSOverlayEventEventArgs e) { var objIndex = overlays.FirstOrDefault(x => x.Value == e.Overlay).Key; }
void OverlayTapped(object sender, GMSOverlayEventEventArgs e) { var map = (Map)Element; // clicked marker var overlay = e.Overlay; if (overlay is APolyline) { // lookup pin Polyline targetPolyline = null; for (var i = 0; i < map.Polylines.Count; i++) { var line = map.Polylines[i]; if (!Object.ReferenceEquals(line.Id, overlay)) { continue; } targetPolyline = line; break; } // only consider event handled if a handler is present. // Else allow default behavior of displaying an info window. targetPolyline?.SendTap(); } else if (overlay is APolygon) { // lookup pin Polygon targetPolygon = null; for (var i = 0; i < map.Polygons.Count; i++) { var polygon = map.Polygons[i]; if (!Object.ReferenceEquals(polygon.Id, overlay)) { continue; } targetPolygon = polygon; break; } // only consider event handled if a handler is present. // Else allow default behavior of displaying an info window. targetPolygon?.SendTap(); } else if (overlay is ACircle) { // lookup pin Circle targetCircle = null; for (var i = 0; i < map.Circles.Count; i++) { var circle = map.Circles[i]; if (!Object.ReferenceEquals(circle.Id, overlay)) { continue; } targetCircle = circle; break; } // only consider event handled if a handler is present. // Else allow default behavior of displaying an info window. targetCircle?.SendTap(); } }
void OnTappedOverlay(object sender, GMSOverlayEventEventArgs e) { var objIndex = overlays.FirstOrDefault(x => x.Value == e.Overlay).Key; }