summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Maps.iOS/MapRenderer.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Xamarin.Forms.Maps.iOS/MapRenderer.cs')
-rw-r--r--Xamarin.Forms.Maps.iOS/MapRenderer.cs16
1 files changed, 12 insertions, 4 deletions
diff --git a/Xamarin.Forms.Maps.iOS/MapRenderer.cs b/Xamarin.Forms.Maps.iOS/MapRenderer.cs
index 44d95aa6..2fac61a8 100644
--- a/Xamarin.Forms.Maps.iOS/MapRenderer.cs
+++ b/Xamarin.Forms.Maps.iOS/MapRenderer.cs
@@ -306,6 +306,16 @@ namespace Xamarin.Forms.Maps.MacOS
}
#endif
+ protected virtual IMKAnnotation CreateAnnotation(Pin pin)
+ {
+ return new MKPointAnnotation
+ {
+ Title = pin.Label,
+ Subtitle = pin.Address ?? "",
+ Coordinate = new CLLocationCoordinate2D(pin.Position.Latitude, pin.Position.Longitude)
+ };
+ }
+
void UpdateRegion()
{
if (_shouldUpdateRegion)
@@ -319,10 +329,8 @@ namespace Xamarin.Forms.Maps.MacOS
{
foreach (Pin pin in pins)
{
- var annotation = new MKPointAnnotation { Title = pin.Label, Subtitle = pin.Address ?? "" };
-
+ var annotation = CreateAnnotation(pin);
pin.Id = annotation;
- annotation.SetCoordinate(new CLLocationCoordinate2D(pin.Position.Latitude, pin.Position.Longitude));
((MKMapView)Control).AddAnnotation(annotation);
}
}
@@ -414,4 +422,4 @@ namespace Xamarin.Forms.Maps.MacOS
}
}
}
-} \ No newline at end of file
+}