public void OnGetAddrResult(MKAddrInfo res, int error) { if (error != 0) { string str = String.Format("错误号:%d", error); Toast.MakeText(geoCoderDemo, str, ToastLength.Long).Show(); return; } //地图移动到该点 geoCoderDemo.mMapView.Controller.AnimateTo(res.GeoPt); if (res.Type == MKAddrInfo.MkGeocode) { //地理编码:通过地址检索坐标点 string strInfo = String.Format("纬度:%f 经度:%f", res.GeoPt.LatitudeE6 / 1e6, res.GeoPt.LongitudeE6 / 1e6); Toast.MakeText(geoCoderDemo, strInfo, ToastLength.Long).Show(); } if (res.Type == MKAddrInfo.MkReversegeocode) { //反地理编码:通过坐标点检索详细地址及周边poi string strInfo = res.StrAddr; Toast.MakeText(geoCoderDemo, strInfo, ToastLength.Long).Show(); } //生成ItemizedOverlay图层用来标注结果点 ItemizedOverlay<OverlayItem> itemOverlay = new ItemizedOverlay<OverlayItem>(null, geoCoderDemo.mMapView); //生成Item OverlayItem item = new OverlayItem(res.GeoPt, "", null); //得到需要标在地图上的资源 Drawable marker = geoCoderDemo.Resources.GetDrawable(Resource.Drawable.icon_markf); //为maker定义位置和边界 marker.SetBounds(0, 0, marker.IntrinsicWidth, marker.IntrinsicHeight); //给item设置marker item.Marker = marker; //在图层上添加item itemOverlay.AddItem(item); //清除地图其他图层 geoCoderDemo.mMapView.Overlays.Clear(); //添加一个标注ItemizedOverlay图层 geoCoderDemo.mMapView.Overlays.Add(itemOverlay); //执行刷新使生效 geoCoderDemo.mMapView.Refresh(); }
public void OnGetAddrResult(MKAddrInfo res, int error) { }
public void OnGetAddrResult(MKAddrInfo result, int iError) { }
/** * 在此处理反地理编结果 */ public void OnGetAddrResult(MKAddrInfo res, int error) { // 错误号可参考MKEvent中的定义 if (error != 0 || res == null) { Toast.MakeText(shareDemoActivity, "抱歉,未找到结果", ToastLength.Long).Show(); return; } AddrShareOverlay addrOverlay = new AddrShareOverlay(shareDemoActivity, shareDemoActivity.Resources.GetDrawable(Resource.Drawable.icon_marka), shareDemoActivity.mMapView, res); shareDemoActivity.mMapView.Overlays.Clear(); shareDemoActivity.mMapView.Overlays.Add(addrOverlay); shareDemoActivity.mMapView.Refresh(); }
public AddrShareOverlay(ShareDemoActivity shareDemoActivity, Drawable defaultMarker, MapView mapView, MKAddrInfo addrInfo) : base(defaultMarker, mapView) { this.shareDemoActivity = shareDemoActivity; this.addrInfo = addrInfo; AddItem(new OverlayItem(addrInfo.GeoPt, addrInfo.StrAddr, addrInfo.StrAddr)); }