protected override IMKAnnotation CreateAnnotation(Pin pin) { if (pin is SKPin) { IMKAnnotation result = new SKPinAnnotation(pin as SKPin); pin.Id = result; return(result); } return(base.CreateAnnotation(pin)); }
private MKAnnotationView GetViewForPin(MKMapView mapView, IMKAnnotation annotation) { SKPinAnnotation skiaAnnotation = annotation as SKPinAnnotation; if (skiaAnnotation != null) { SKPin pin = skiaAnnotation.SharedPin; SKPinAnnotationView pinView = mapView.DequeueReusableAnnotation(SKPinAnnotationView.ViewIdentifier) as SKPinAnnotationView ?? CreateAnnotationView(skiaAnnotation); pinView.Annotation = skiaAnnotation; pinView.UpdateImage(); pinView.UpdateAnchor(); pinView.Hidden = !pin.IsVisible; pinView.Enabled = !pin.Clickable; return(pinView); } return(null); }
public SKPinAnnotationView(SKPinAnnotation annotation) : base(annotation, ViewIdentifier) { _screenDensity = UIScreen.MainScreen.Scale; }
private SKPinAnnotationView CreateAnnotationView(SKPinAnnotation skiaAnnotation) { return(new SKPinAnnotationView(skiaAnnotation)); }