百度地图之路径规划

先讲一下路径规划的主要函数:

说明:city为待查公交线路所在城市,start和end分别是起点和终点

驾车路线搜索:mMKSearch.drivingSearch(null, start, null, end);

步行线路搜索:mMKSearch.walkingSearch(null, start, null, end);

公交线路搜索的方法:transitSearch(String city, MKPlanNode start, MKPlanNode end),city;

另外,公交和驾车的策略:


其他的可以看百度官网。

我的应用代码实例如下:(以公交方式为例)

if (mBtnTransit.equals(v)) {
			//单击搜索后,关闭软键盘
			InputMethodManager imm=(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
			imm.hideSoftInputFromWindow(editEn.getWindowToken(), 0);
			
			if(stNode.name.equals("")){
				Toast toast=Toast.makeText(RoutePlan.this, "您的起点输入为空!", Toast.LENGTH_LONG);
    			toast.setGravity(Gravity.CENTER, 0, 0);
    			toast.show();
			}else if(enNode.name.equals("")){
				Toast toast=Toast.makeText(RoutePlan.this, "您的终点输入为空!", Toast.LENGTH_LONG);
    			toast.setGravity(Gravity.CENTER, 0, 0);
    			toast.show();
			}else{
				mBtnDrive.setClickable(false);
				mBtnDrive.setTextColor(Color.GRAY);
				mBtnWalk.setClickable(false);
				mBtnWalk.setTextColor(Color.GRAY);
				bus_mintime.setVisibility(View.VISIBLE);
		    	bus_minexchange.setVisibility(View.VISIBLE);
		    	bus_minwalk.setVisibility(View.VISIBLE);
		        
		    	bus_mintime.setOnClickListener(new OnClickListener(){
					@Override    //公交时间优先
					public void onClick(View arg0) {
						mSearch.setTransitPolicy(MKSearch.EBUS_TIME_FIRST);
						mSearch.transitSearch("赣州市", stNode, enNode);
						Log.i("bus search","EBUS_TIME_FIRST");
						dialog.show();
						
						bus_mintime.setVisibility(View.GONE);
				    	bus_minexchange.setVisibility(View.GONE);
				    	bus_minwalk.setVisibility(View.GONE);
				    	mBtnDrive.setClickable(true);
						mBtnDrive.setTextColor(Color.BLUE);
						mBtnWalk.setClickable(true);
						mBtnWalk.setTextColor(Color.BLUE);
					}
		    	});
		    	bus_minexchange.setOnClickListener(new OnClickListener(){
					@Override    //公交最少换乘
					public void onClick(View arg0) {
						mSearch.setTransitPolicy(MKSearch.EBUS_TRANSFER_FIRST);
						mSearch.transitSearch("赣州市", stNode, enNode);
						Log.i("bus search","EBUS_TRANSFER_FIRST");
						dialog.show();
						
						bus_mintime.setVisibility(View.GONE);
				    	bus_minexchange.setVisibility(View.GONE);
				    	bus_minwalk.setVisibility(View.GONE);
				    	mBtnDrive.setClickable(true);
						mBtnDrive.setTextColor(Color.BLUE);
						mBtnWalk.setClickable(true);
						mBtnWalk.setTextColor(Color.BLUE);
					}
		    	});
		    	bus_minwalk.setOnClickListener(new OnClickListener(){
					@Override    //公交最少步行
					public void onClick(View arg0) {
						mSearch.setTransitPolicy(MKSearch.EBUS_WALK_FIRST);
						mSearch.transitSearch("赣州市", stNode, enNode);
						Log.i("bus search","EBUS_WALK_FIRST");
						dialog.show();
						
						bus_mintime.setVisibility(View.GONE);
				    	bus_minexchange.setVisibility(View.GONE);
				    	bus_minwalk.setVisibility(View.GONE);
				    	mBtnDrive.setClickable(true);
						mBtnDrive.setTextColor(Color.BLUE);
						mBtnWalk.setClickable(true);
						mBtnWalk.setTextColor(Color.BLUE);
					}
		    	});
			}
			
效果如图:


安卓市场:http://apk.hiapk.com/html/2013/05/1468059.html?module=256&info=IWjtVg9cqVJLYg%3D%3D
N多市场:
http://www.nduoa.com/apk/detail/553415

360手机助手:http://zhushou.360.cn/search/index/?kw=%E6%A0%A1%E5%9B%AD%E5%B0%8F%E5%8A%A9%E6%89%8B

百度应用:http://as.baidu.com/a/item?docid=3101724&pre=web_am_se

优亿市场(eoe):http://www.eoemarket.com/search/apps/?keyword=%E6%A0%A1%E5%9B%AD%E5%B0%8F%E5%8A%A9%E6%89%8B

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值