【问题标题】:Xamarin Forms Maps - showing current location on iOSXamarin Forms Maps - 在 iOS 上显示当前位置
【发布时间】:2018-03-22 16:00:22
【问题描述】:

在 Xamarin Forms 中,Xamarin.Forms.Maps 的 IsShowingUser 属性是否适用于 iOS?

我的地图的各个方面都可以在 Android 和 iOS 上运行,但当前位置“蓝点”不会在 iOS 上显示。

我在 PCL 项目的共享代码中设置了这个,就在成功请求使用位置的权限之后。

var status = await CrossPermissions.Current.CheckPermissionStatusAsync(Permission.Location);
            if (status != PermissionStatus.Granted)
            {
                var results = await CrossPermissions.Current.RequestPermissionsAsync(new[] { Permission.Location });
                status = results[Permission.Location];
            }

            if (status == PermissionStatus.Granted)
            {
                MyMap.IsShowingUser = true;
            }

谢谢

【问题讨论】:

  • 我也遇到了同样的问题,你得到答案了吗?而且在我的 ios 应用程序中,用户当前位置按钮没有显示。但我设置了 IsShowing=true
  • 查看接受的答案,它为我完成了工作

标签: c# ios google-maps xamarin.forms


【解决方案1】:

我的地图的各个方面都可以在 Android 和 iOS 上运行,但当前位置“蓝点”不会在 iOS 上显示。

这是因为当时地图没有定位到当前用户位置,你可以使用 Xam.Plugin.Geolocator获取你当前的位置,并将地图移动到那里。

var locator = CrossGeolocator.Current;
var position = await locator.GetPositionAsync(TimeSpan.FromSeconds(10));
map.MoveToRegion(MapSpan.FromCenterAndRadius(new Position(position.Latitude, position.Longitude),
                                                     Distance.FromMiles(1)));

【讨论】:

  • 您的代码找到了位置,但地图没有移动/缩放到该位置。有错误吗? @Cole Xia - MSFT
  • 我正在使用 xamarin 表单映射(它应该根据文档工作)。
猜你喜欢
  • 1970-01-01
  • 2020-11-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-01
相关资源
最近更新 更多