当用户点击Xamarin.Forms中的地图时,如何获取坐标?

当用户点击Xamarin.Forms中的地图时,如何获取坐标?,xamarin,xamarin.forms,Xamarin,Xamarin.forms,在我的Xamarin.Forms(PCL项目)中,我希望在用户点击地图时获得坐标(lat&long),但在类中找不到任何点击事件。我认为在这种情况下,使用TapGestureRecognitor类的对象不会有帮助 那么,我们是否可以在本机平台上执行任何技术来识别抽头并获得抽头区域/点的坐标 任何博客文章或技巧都会有所帮助 谢谢。在这一点上,我不相信任何一个处理Xamarin地图抽象的Nuget会处理这种非常具体的事情。您可能需要执行本机实现,并使用依赖项注入模式来进行适当的调用 PCL中的接口

在我的Xamarin.Forms(PCL项目)中,我希望在用户点击地图时获得坐标(lat&long),但在类中找不到任何点击事件。我认为在这种情况下,使用TapGestureRecognitor类的对象不会有帮助

那么,我们是否可以在本机平台上执行任何技术来识别抽头并获得抽头区域/点的坐标

任何博客文章或技巧都会有所帮助


谢谢。

在这一点上,我不相信任何一个处理Xamarin地图抽象的Nuget会处理这种非常具体的事情。您可能需要执行本机实现,并使用依赖项注入模式来进行适当的调用

PCL中的接口

interface IMaps
{
   public GetLatLong();
}
public point HandleMapOnClick()
{
    return DependencyService.Get<IMaps>().GetLatLong();
}
本机Android实现

本机iOS实施

在PCL中调用您的实现

interface IMaps
{
   public GetLatLong();
}
public point HandleMapOnClick()
{
    return DependencyService.Get<IMaps>().GetLatLong();
}
public point HandleMapOnClick()
{
返回DependencyService.Get().GetLatLong();
}

我实现了简单的扩展地图控件,为所有三个平台提供点击位置。你可以看看。这是纯粹的样板代码,不是为了生产,对我来说很好,但是如果你有任何问题,请告诉我。

改写以使英语更清晰,请考虑在你的文章中添加更多的细节,比如你已经尝试过的其他东西。去投票,Xamarin添加了这个能力。我使用Windows phone进行了检查,结果正常。谢谢:)