還請大家注意在文章進行轉載的時候麻煩註明出處
《http://blog.csdn.net/shuaiyinoo》謝謝
在寫這編部落格的時候,首先需要說明一下的是,在地圖上顯示多條導航線路無論是對步行線路來說,駕車路線來說,或者公用交通路線都同樣適用
實現這個多條線路只與一條顯示微有一點點不同,只不過多加了一個迴圈而已。先請大家來看看
具體的實現如下
第一步同樣和以前的幾篇部落格一樣在onCreate方法中加入如下代碼
//v9.00駕車路線多條搜尋 mapController.setZoom(14); //在地圖範圍內實現對物體的搜尋 mkSearch = new MKSearch(); mkSearch.init(bMapManager, new MySearchListener()); //給定第一個座標 start = new MKPlanNode(); start.pt = new GeoPoint((int)(39.915*1E6),(int)(116.404*1E6)); //給定第二個座標 end = new MKPlanNode(); end.pt = new GeoPoint(40057031,116307852); //調用路線的回調方法 mkSearch.transitSearch("北京", start, end);
然後在MySearchListener implements MKSearchListener實現的這個介面中實現如下方法
@Overridepublic void onGetTransitRouteResult(MKTransitRouteResult result, int type) {//公交轉乘的回調方法//v7.00//if(result == null){//return;//}//TransitOverlay transitOverlay = new TransitOverlay(BaiDu_SuYiActivity.this, mapView);//transitOverlay.setData(result.getPlan(0));//mapView.getOverlays().add(transitOverlay);//重新整理地圖//mapView.invalidate();//v9.00if(result == null){return;}//獲得所有的駕車線路圖int planNum = result.getNumPlan();for(int i = 0 ;i<planNum;i++){TransitOverlay transitOverlay = new TransitOverlay(BaiDu_SuYiActivity.this, mapView);transitOverlay.setData(result.getPlan(i));mapView.getOverlays().add(transitOverlay);}mapView.invalidate();mapView.getController().animateTo(result.getStart().pt);}
上面的方法中有V7.00和V9.00方法的比較和不用,仔細看你會發現僅僅是多了一個迴圈而已,舉一反三,通過這個例子是不是其他的方法多條顯示也知道了呢?