首页 > 解决方案 > Xamarin Forms Maps Pin 显示在 android 模拟器上,但未显示在 android 设备上

问题描述

我已经xamarin为 android开发了一个应用程序xamarin.forms.maps。在 android 模拟器中调试工作正常。在 android 设备上调试仍会显示地图,但既不会以过去坐标为中心,也不会绘制图钉。

public void LoadMapa(){
            var mainViewModel = MainViewModel.GetInstance();
            var lat = Convert.ToDouble(mainViewModel.Vehiculo.Vehiculo.Lat);
            var lon = Convert.ToDouble(mainViewModel.Vehiculo.Vehiculo.Lon);
            var pin = new MapaPin
            {
                Type = PinType.Place,
                Position = new Position(lat, lon),
                Label = "Xamarin San Francisco Office",
                Address = "394 Pacific Ave, San Francisco CA",
                Id = "Xamarin",
                Url = "http://xamarin.com/about/"
            };
            customMap.MapaPins = new List<MapaPin> { pin };
            customMap.Pins.Add(pin);
            customMap.MoveToRegion(MapSpan.FromCenterAndRadius(new 
            Position(lat, lon), Distance.FromMiles(1.0)));
}

在此处输入图像描述

标签: xamarin.androidxamarin.forms.maps

解决方案


没有足够的代码来查看您从哪里获取Vehiculo.LatVehiculo.Lon从哪里获取。

这可能是您的设备文化设置有问题,因此Convert.ToDouble(...)失败了吗?我在使用小数逗号/小数点时遇到了这样的问题。


推荐阅读