百度地图之八查询某一路公交路线详细搜索
来源:互联网 发布:动画ppt软件下载 编辑:程序博客网 时间:2024/04/19 21:54
公交路线详细搜索
如何检索某一城市的公交路线图
实战案例:检索北京市公交路线717的路线
主要代码:
import com.baidu.mapapi.BMapManager;import com.baidu.mapapi.MKAddrInfo;import com.baidu.mapapi.MKBusLineResult;import com.baidu.mapapi.MKDrivingRouteResult;import com.baidu.mapapi.MKGeneralListener;import com.baidu.mapapi.MKPoiInfo;import com.baidu.mapapi.MKPoiResult;import com.baidu.mapapi.MKSearch;import com.baidu.mapapi.MKSearchListener;import com.baidu.mapapi.MKSuggestionResult;import com.baidu.mapapi.MKTransitRouteResult;import com.baidu.mapapi.MKWalkingRouteResult;import com.baidu.mapapi.MapActivity;import com.baidu.mapapi.MapView;import com.baidu.mapapi.RouteOverlay;import com.baidu.mapapi.TransitOverlay;import android.os.Bundle;import android.widget.Toast;public class MainActivity extends MapActivity { // 添加百度地图的相关控件 private MapView mapView; // 加载地图的引擎 private BMapManager bMapManager; // 百度地图的key private String KeyString = "8C426377B3526B6BF3672C9BA3BB544D1E8289CD"; // 用于位置检索、周边检索、范围检索、公交检索、驾乘检索、步行检索等 private MKSearch mkSearch; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mapView = (MapView) this.findViewById(R.id.bmapView); bMapManager = new BMapManager(MainActivity.this); // 必须要加载key bMapManager.init(KeyString, new MKGeneralListener() { public void onGetPermissionState(int arg0) { } public void onGetNetworkState(int arg0) { if (arg0 == 300) { Toast.makeText(MainActivity.this, "输入的key有错,请核实!!", 1).show(); } } }); this.initMapActivity(bMapManager); //实例化地图的查询类 mkSearch = new MKSearch(); mkSearch.init(bMapManager, new MySearchListener()); //城市名,关键字 mkSearch.poiSearchInCity("北京", "300"); } public class MySearchListener implements MKSearchListener { public void onGetAddrResult(MKAddrInfo arg0, int arg1) { // TODO Auto-generated method stub } public void onGetBusDetailResult(MKBusLineResult arg0, int arg1) { // TODO Auto-generated method stub if(arg0==null||arg1!=0){ Toast.makeText(MainActivity.this, "对不起,未找到结果!!", 1).show(); return; } RouteOverlay routeOverlay = new RouteOverlay(MainActivity.this,mapView); routeOverlay.setData(arg0.getBusRoute());//获得公交线路图 mapView.getOverlays().clear();//清除公交站点的标识 mapView.getOverlays().add(routeOverlay); mapView.invalidate(); //采用动画形式描述公交站点 mapView.getController().animateTo(arg0.getBusRoute().getStart()); } public void onGetDrivingRouteResult(MKDrivingRouteResult arg0, int arg1) { // TODO Auto-generated method stub } /** * 获得公交线路图的Uid,并且根据此UID来发起公交线路详情的检索 */ public void onGetPoiResult(MKPoiResult result, int type, int iError) { // TODO Auto-generated method stub if(result==null||iError!=0){ Toast.makeText(MainActivity.this, "对不起,未找到结果", 1).show(); return; } //定义公交线路图的描述类 MKPoiInfo mkPoiInfo = null; int totalPoiNum = result.getNumPois();//获得本地检索的公交线路图的总站数 for(int i = 0;i<totalPoiNum;i++){ mkPoiInfo = result.getPoi(i); //2 公交线路 if(mkPoiInfo.ePoiType==2){ break; } } mkSearch.busLineSearch("北京", mkPoiInfo.uid); } public void onGetRGCShareUrlResult(String arg0, int arg1) { // TODO Auto-generated method stub } public void onGetSuggestionResult(MKSuggestionResult arg0, int arg1) { // TODO Auto-generated method stub } public void onGetTransitRouteResult(MKTransitRouteResult arg0, int arg1) { // TODO Auto-generated method stub if(arg0==null){ return; } TransitOverlay transiOverlay = new TransitOverlay(MainActivity.this,mapView); transiOverlay.setData(arg0.getPlan(0)); mapView.getOverlays().add(transiOverlay); mapView.invalidate(); } public void onGetWalkingRouteResult(MKWalkingRouteResult arg0, int arg1) { // TODO Auto-generated method stub } } @Override protected void onDestroy() { super.onDestroy(); if (bMapManager != null) { bMapManager.destroy(); bMapManager = null; } } @Override protected void onResume() { super.onResume(); if (bMapManager != null) { bMapManager.start(); } } @Override protected void onPause() { super.onPause(); if (bMapManager != null) { bMapManager.stop(); } } @Override protected boolean isRouteDisplayed() { return false; }}
<script type="text/javascript"><!--google_ad_client = "ca-pub-1944176156128447";/* cnblogs 首页横幅 */google_ad_slot = "5419468456";google_ad_width = 728;google_ad_height = 90;//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
- 百度地图之八查询某一路公交路线详细搜索
- 百度地图之搜索公交路线
- Android 百度地图学习笔记--公交路线查询
- 百度地图API详解之公交路线规划
- android百度地图开发之自动定位所在位置与固定位置进行驾车,步行,公交路线搜索
- android百度地图开发之自动定位所在位置与固定位置进行驾车,步行,公交路线搜索
- 百度地图公交路线 问题
- 百度地图开发第四天(公交路线查询)
- 百度POI实现周边搜索及公交路线查询
- 百度地图自定义公交路线源码
- 百度地图自定义公交路线源码
- 高德地图 公交路线查询
- 百度地图之搜索
- Android 百度地图 SDK v3_3_0 (六) ---驾车、步行、公交路线搜索
- 百度地图公交路线自定义线路信息
- 百度地图之POI搜索
- 公交路线查询
- 公交路线查询
- poj_2362
- 如何制作一个简单的蓝牙网络多人扑克游戏第一部分
- 几个国外优秀PPT模版网站
- 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管
- 广告牌技术教程:引言
- 百度地图之八查询某一路公交路线详细搜索
- MC(monitorcat) 监控军刀
- OAuth2.0新浪微博开放平台、腾讯社区开放平台
- Mysql基本命令
- JSP入门
- JSP入门[续]
- JSP运行原理和九大隐式对象
- 获取当前日期和随机数
- 会话管理