本文主要是介绍百度地图:加强篇(路线检索:驾车+步行+公交换乘),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、实现目的:广州市内,广工到广州塔的驾车路线
实现过程:
搜索:
1、初始化search:search.init(manager, listener);
2、设置驾车路线规划策略:
search.setDrivingPolicy(MKSearch.ECAR_DIS_FIRST);
3、设置驾车路线搜索:
search.drivingSearch(“广州”, start, “广州”, end);
处理结果
4、设置listener进行数据的处理:
a:实例化RouteOverlay的对象,然后对该对象设置数据
overlay.setData(result.getPlan(0).getRoute(0));获得第一个方案的第一个路线。
b:将overlay添加到overlays集合,然后刷新mapView。
实现效果:
DrivingSearchDemo.java
package huaxa.it.map;import com.baidu.mapapi.map.RouteOverlay;
import com.baidu.mapapi.search.MKDrivingRouteResult;
import com.baidu.mapapi.search.MKPlanNode;
import com.baidu.mapapi.search.MKRoute;
import com.baidu.mapapi.search.MKRoutePlan;
import com.baidu.mapapi.search.MKSearch;import android.os.Bundle;
import android.widget.Toast;/*** @项目名: BaiduMap* @包名: huaxa.it.map* @类名: DrivingSearchDemo* @创建者: 黄夏莲* @创建时间: 2016年12月3日 ,上午10:00:48* * @描述: TODO*/
public class DrivingSearchDemo extends BaseActivity
{private MySearchListener listener;@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);search();}private void search(){listener = new MySearchListener();search.init(manager, listener);// ********驾车路线规划策略************// setDrivingPolicy// public int setDrivingPolicy(int policy)// 设置驾车路线规划策略. 参数为策略常量。对下次搜索有效// 参数:// policy - ECAR_TIME_FIRST:时间优先;ECAR_DIS_FIRST:距离最短;ECAR_FEE_FIRST:费用最少// 返回:// 成功返回0,否则返回-1search.setDrivingPolicy(MKSearch.ECAR_DIS_FIRST);// **********驾乘路线搜索***************// public int drivingSearch(String startCity,MKPlanNode start,String// endCity,MKPlanNode end)// 驾乘路线搜索.// 异步函数,返回结果在MKSearchListener里的onGetDrivingRouteResult方法通知// 参数:// startCity - 起点所在城市,起点为坐标时可不填// start - 搜索的起点,可以为坐标,名称任一种// endCity - 终点所在城市,终点为坐标时可不填// end - 搜索的终点,可以为坐标,名称任一种// 返回:// 成功返回0,否则返回-1// 补充:MKPlanNode的属性// 1、String name结点名称// 2、GeoPoint pt结点坐标MKPlanNode start = new MKPlanNode();start.pt = geoPoint;MKPlanNode end = new MKPlanNode();end.name =
这篇关于百度地图:加强篇(路线检索:驾车+步行+公交换乘)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!