@Override
public void onGetDrivingRouteResult(DrivingRouteResult result) {
if (result == null || result.error != SearchResult.ERRORNO.NO_ERROR) {
Toast.makeText(RoutePlanDemo.this, "抱歉,未找到结果", Toast.LENGTH_SHORT).show();
}
if (result.error == SearchResult.ERRORNO.AMBIGUOUS_ROURE_ADDR) {
//起终点或途经点地址有岐义,通过以下接口获取建议查询信息
//result.getSuggestAddrInfo()
return;
}
if (result.error == SearchResult.ERRORNO.NO_ERROR) {
nodeIndex = -1;
mBtnPre.setVisibility(View.VISIBLE);
mBtnNext.setVisibility(View.VISIBLE);
route = result.getRouteLines().get(0);
//驾车路线的规划,有很多节点(拐点)图标
DrivingRouteOverlay overlay = new MyDrivingRouteOverlay(mBaidumap);
routeOverlay = overlay;
mBaidumap.setOnMarkerClickListener(overlay);
overlay.setData(result.getRouteLines().get(0));
overlay.addToMap();
overlay.zoomToSpan();
//如何只画线(不要图标), test(result.getRouteLines().get(0));
}
//路线规划
private void test(DrivingRouteLine drivingRouteLine) { final ArrayList list = new ArrayList(); PolylineOptions object = new PolylineOptions(); List arg0=new ArrayList(); List allStep = drivingRouteLine.getAllStep(); for (int i = 0; i < allStep.size(); i++) { DrivingStep drivingStep = allStep.get(i); List wayPoints = drivingStep.getWayPoints(); arg0.addAll(wayPoints); } object.color(Color.RED).width(20).points(arg0); list.add(object); OverlayManager overlayManager = new OverlayManager(mBaidumap) { @Override public boolean onPolylineClick(Polyline arg0) { return false; } @Override public boolean onMarkerClick(Marker arg0) { return false; } @Override public List getOverlayOptions() { return list; } }; overlayManager.addToMap(); }