尝试在Android上的地图上添加Tap处理程序时,继承的正确对象是什么?我已尝试使用MapView,MapRenderer,MapActivity,Overlay等等。
CustomMapRenderer.cs
完全错了,但显示出我一直在尝试的东西。
using Xamarin.Forms;
using nuMaps;
using nuMaps.Droid;
using Android.Gms.Maps;
using System;
using Xamarin.Forms.Maps.Android;
using Xamarin.Forms.Platform.Android;
using Android.App;
using Xamarin.Forms.Maps;
using Android.Widget;
using Android.GoogleMaps;
namespace nuMaps.Droid
{
public class CustomMapRenderer MapActivity
{
public override bool OnTouchEvent (Android.Views.MotionEvent e, Android.GoogleMaps.MapView mapView)
{
Console.WriteLine (e.Action);
return base.OnTouchEvent (e, mapView);
}
}
}
MapPage.xaml
<?xml version="1.0" encoding="UTF-8"?>
<ContentPage
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:nuMaps;assembly=nuMaps"
x:Class="nuMaps.MapPage">
<ContentPage.Content>
<AbsoluteLayout>
<local:CustomMap
x:Name="MyMap"
IsShowingUser="true"
MapType="Hybrid"
AbsoluteLayout.LayoutBounds="0, 0, 1, 1"
AbsoluteLayout.LayoutFlags="All"
/>
</AbsoluteLayout>
</ContentPage.Content>
</ContentPage>
答案 0 :(得分:1)
我实现了简单的扩展地图控件来测试自定义地图渲染器。你可以看看here。不确定这是否是你需要的。此类的唯一目的是为所有三个平台提供分路位置。这是纯粹的示例代码,不是用于制作,对我来说很好,但如果您有任何问题,请告诉我。