/** * 在此处理poi搜索结果 , 用poioverlay 显示 */ public void OnGetPoiResult(MKPoiResult res, int type, int error) { // 错误号可参考MKEvent中的定义 if (error != 0 || res == null) { Toast.MakeText(shareDemoActivity, "抱歉,未找到结果", ToastLength.Long).Show(); return; } // 将地图移动到第一个POI中心点 if (res.CurrentNumPois > 0) { // 将poi结果显示到地图上 PoiShareOverlay poiOverlay = new PoiShareOverlay(shareDemoActivity, shareDemoActivity.mMapView); poiOverlay.SetData(res.AllPoi); shareDemoActivity.mMapView.Overlays.Clear(); shareDemoActivity.mMapView.Overlays.Add(poiOverlay); shareDemoActivity.mMapView.Refresh(); //当ePoiType为2(公交线路)或4(地铁线路)时, poi坐标为空 foreach (MKPoiInfo info in res.AllPoi) { if (info.Pt != null) { shareDemoActivity.mMapView.Controller.AnimateTo(info.Pt); break; } } } }
public void OnGetPoiResult(PoiResult result) { if (result == null || result.Error != SearchResult.ERRORNO.NoError) { Toast.MakeText(this, "��Ǹ��δ�ҵ����", ToastLength.Long).Show(); return; } mBaiduMap.Clear(); PoiShareOverlay poiOverlay = new PoiShareOverlay(this, mBaiduMap); mBaiduMap.SetOnMarkerClickListener(poiOverlay); poiOverlay.SetData(result); poiOverlay.AddToMap(); poiOverlay.ZoomToSpan(); }