百度地图:加强篇(路线检索:驾车+步行+公交换乘)

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;

    @Override
    protected 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,否则返回-1
        search.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 = 
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值