1

我正在尝试在我的 UWP 应用项目中使用 Xamarin.Forms.Map 插件加载街道地图。为此,我还从 MSDN 获得了令牌。这是我所做的:

MapePage.xaml

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
             xmlns:vm="clr-namespace:Map_POC.ViewModels" 
             xmlns:maps="clr-namespace:Xamarin.Forms.Maps;assembly=Xamarin.Forms.Maps" 
             xmlns:local="clr-namespace:Map_POC.CustomControls"
             x:Class="Map_POC.Views.MapePage">
    <ContentPage.BindingContext>
        <vm:MapePageViewModel />
    </ContentPage.BindingContext>
    <ContentPage.Content>
        <StackLayout HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand">
            <maps:Map
                x:Name="MyMap"
                HorizontalOptions="FillAndExpand" 
                VerticalOptions="FillAndExpand"     
                MapType="Street" />
        </StackLayout>
    </ContentPage.Content>
</ContentPage>

MapePage.xaml.cs

public MapePage()
{
    InitializeComponent();
    
    Position position = new Position(-37.8141, 144.9633);

    var pin = new Pin
    {
        Type = PinType.Place,
        Position = position,
        Label = "I'm a Pin",
    };

    MyMap.Pins.Add(pin);

    MyMap.MoveToRegion(
        MapSpan.FromCenterAndRadius(
            position, Distance.FromMiles(1)));
}

MainPage.xaml.cs(在 UWP 解决方案中)

public sealed partial class MainPage
{
    public MainPage()
    {
        this.InitializeComponent();
        Xamarin.FormsMaps.Init(Keys.UWPMapToken);
        Windows.Services.Maps.MapService.ServiceToken = Keys.UWPMapToken;
        LoadApplication(new Map_POC.App());
    }
}

输出:使用混合地图,它显示地图但未正确显示引脚和位置。

在此处输入图像描述


  1. 除此之外,它在离线模式下不起作用,我们可以缓存地图以用于离线模式吗?
  2. 我们可以绘制一个多边形并且覆盖在多边形内的坐标可以单独单击吗?

对此的任何帮助将不胜感激。

4

0 回答 0