/**
  * 在此处理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;
             }
         }
     }
 }
Esempio n. 2
0
 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();
 }