public MapStartingPoint(Position pos)
        {
            InitializeComponent();
            this.Title     = "Starting Point";
            infoLabel.Text = "";

            pinFlag = true;
            myMap   = new ExtMap
            {
                VerticalOptions = LayoutOptions.FillAndExpand,
                IsShowingUser   = true
            };
            this.IsBusy = true;

            myMap.MoveToRegion(new MapSpan(pos, 0.01, 0.01));
            var pin = new Pin
            {
                Type     = PinType.Place,
                Position = pos,
                Label    = "Start",
                Address  = "",
            };

            myMap.Pins.Add(pin);
            stackMap.Children.Add(myMap);
            IsBusy = false;
        }
        async void Locator()
        {
            try
            {
                var locator = CrossGeolocator.Current;
                locator.DesiredAccuracy = 50;
                var position = await locator.GetPositionAsync(timeoutMilliseconds : 40000);

                var pos = new Position(position.Latitude, position.Longitude);
                myMap.MoveToRegion(new MapSpan(pos, 0.01, 0.01));
                stackMap.Children.Add(myMap);
                this.IsBusy    = false;
                infoLabel.Text = "Tap starting point in the Map";
            }
            catch (Exception ex)
            {
                infoLabel.Text = "Unable to get location, check GPS connection";
            }
        }