【发布时间】:2014-05-15 07:56:04
【问题描述】:
我正在使用 xamarin googel 地图组件在 iOS 中开发谷歌地图应用程序。当用户触摸地图时,我想获取用户触摸的地图的位置。任何想法。
提前致谢。
【问题讨论】:
标签: ios google-maps map xamarin.android xamarin
我正在使用 xamarin googel 地图组件在 iOS 中开发谷歌地图应用程序。当用户触摸地图时,我想获取用户触摸的地图的位置。任何想法。
提前致谢。
【问题讨论】:
标签: ios google-maps map xamarin.android xamarin
对于 Xamarin.iOS,Google Map 将使用 TappedMarker 事件。它可能以三种不同的方式使用。
第一种实现方式:
您可以直接使用 MapView Delegate 事件 didTapMarker 。它将与 GMUClusterManager 一起工作,例如
[Export("mapView:didTapMarker:")]
public bool TappedMarker(MapView mapView, Marker marker)
{
var id = marker.Title;
Console.WriteLine(id);
return true;
}
第二种实现方式:
对于你的GoogleMap,我们可以直接使用TappedMarker方法
this.GMapView.TappedMarker = (map, marker) =>
{
var id = marker.Title;
Console.WriteLine(id);
return true;
}
第三种实现方式:
对于您的 GoogleMap ,您可以使用自己的自定义方法进行 TappedMarker 事件。
this.GMapView.TappedMarker = markerClicked;
markerClicked的定义在这里
bool markerClicked(MapView map, Marker marker)
{
var id = marker.Title;
Console.WriteLine(id);
return true;
}
【讨论】:
MapView 有一个点击事件,以及多个 Touches* 事件
mapView.Tapped += delegate(object sender, GMSCoordEventArgs e) {
Console.WriteLine("tapped at " + e.Coordinate.Latitude + "," + e.Coordinate.Longitude);
};
【讨论】: