Search code examples
iosmkmapviewxamarin.formsxamarin.forms.labs

MoveToRegion in xamarin forms maps behaves strangely


I am using a Map control in my app, and i need to set the visible region in such a way that it should cover all the pins. Irony is same code doesn't work on both the platform, iOS works awkwardly , below code yield almost the same visible region in both platform.

 if(Device.OS == TargetPlatform.iOS)
                customMap.MoveToRegion (MapSpan.FromCenterAndRadius (customMap.CustomPins [0].Pin.Position, Distance.FromMiles (0.20)));
if(Device.OS == TargetPlatform.Android)
                customMap.MoveToRegion (MapSpan.FromCenterAndRadius (customMap.CustomPins [0].Pin.Position, Distance.FromMiles (55.0)));

Can anyone explains it? why I need to code like it?


Solution

  • i have found a workaround , i am waiting for some explanation before accepting my own answer for it

    Device.StartTimer(TimeSpan.FromMilliseconds(500), () =>
                        {
                            customMap.MoveToRegion(MapSpan.FromCenterAndRadius(customMap.CustomPins [0].Pin.Position, Distance.FromMiles(55.0)));
                            return false;
                        });