package com.baidu.mapapi.demo; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; import com.baidu.mapapi.BMapManager; import com.baidu.mapapi.MKAddrInfo; import com.baidu.mapapi.MKBusLineResult; import com.baidu.mapapi.MKDrivingRouteResult; 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; public class BusLineSearch extends MapActivity { Button mBtnSearch = null; // 搜索按钮 MapView mMapView = null; // 地图View MKSearch mSearch = null; // 搜索模块,也可去掉地图模块独立使用 String mCityName = null; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.buslinesearch); BMapApiDemoApp app = (BMapApiDemoApp)this.getApplication(); if (app.mBMapMan == null) { app.mBMapMan = new BMapManager(getApplication()); app.mBMapMan.init(app.mStrKey, new BMapApiDemoApp.MyGeneralListener()); } app.mBMapMan.start(); // 如果使用地图SDK,请初始化地图Activity super.initMapActivity(app.mBMapMan); mMapView = (MapView)findViewById(R.id.bmapView); mMapView.setBuiltInZoomControls(true); //设置在缩放动画过程中也显示overlay,默认为不绘制 mMapView.setDrawOverlayWhenZooming(true); // 初始化搜索模块,注册事件监听 mSearch = new MKSearch(); mSearch.init(app.mBMapMan, new MKSearchListener(){ @Override public void onGetPoiDetailSearchResult(int type, int error) { } public void onGetPoiResult(MKPoiResult res, int type, int error) { // 错误号可参考MKEvent中的定义 if (error != 0 || res == null) { Toast.makeText(BusLineSearch.this, "抱歉,未找到结果", Toast.LENGTH_LONG).show(); return; } // 找到公交路线poi node MKPoiInfo curPoi = null; int totalPoiNum = res.getNumPois(); for( int idx = 0; idx < totalPoiNum; idx++ ) { curPoi = res.getPoi(idx); if ( 2 == curPoi.ePoiType ) { // poi类型,0:普通点,1:公交站,2:公交线路,3:地铁站,4:地铁线路 mSearch.busLineSearch(mCityName, curPoi.uid); break; } } // 没有找到公交信息 if (curPoi == null) { Toast.makeText(BusLineSearch.this, "抱歉,未找到结果", Toast.LENGTH_LONG).show(); return; } } public void onGetDrivingRouteResult(MKDrivingRouteResult res, int error) { } public void onGetTransitRouteResult(MKTransitRouteResult res, int error) { } public void onGetWalkingRouteResult(MKWalkingRouteResult res, int error) { } public void onGetAddrResult(MKAddrInfo res, int error) { } public void onGetBusDetailResult(MKBusLineResult result, int iError) { if (iError != 0 || result == null) { Toast.makeText(BusLineSearch.this, "抱歉,未找到结果", Toast.LENGTH_LONG).show(); return; } RouteOverlay routeOverlay = new RouteOverlay(BusLineSearch.this, mMapView); // 此处仅展示一个方案作为示例 routeOverlay.setData(result.getBusRoute()); mMapView.getOverlays().clear(); mMapView.getOverlays().add(routeOverlay); mMapView.invalidate(); mMapView.getController().animateTo(result.getBusRoute().getStart()); } @Override public void onGetSuggestionResult(MKSuggestionResult res, int arg1) { // TODO Auto-generated method stub } @Override public void onGetRGCShareUrlResult(String arg0, int arg1) { // TODO Auto-generated method stub } }); // 设定搜索按钮的响应 mBtnSearch = (Button)findViewById(R.id.search); OnClickListener clickListener = new OnClickListener(){ public void onClick(View v) { SearchButtonProcess(v); } }; mBtnSearch.setOnClickListener(clickListener); } void SearchButtonProcess(View v) { if (mBtnSearch.equals(v)) { EditText editCity = (EditText)findViewById(R.id.city); EditText editSearchKey = (EditText)findViewById(R.id.searchkey); mCityName = editCity.getText().toString(); mSearch.poiSearchInCity(mCityName, editSearchKey.getText().toString()); } } @Override protected void onPause() { BMapApiDemoApp app = (BMapApiDemoApp)this.getApplication(); app.mBMapMan.stop(); super.onPause(); } @Override protected void onResume() { BMapApiDemoApp app = (BMapApiDemoApp)this.getApplication(); app.mBMapMan.start(); super.onResume(); } @Override protected boolean isRouteDisplayed() { // TODO Auto-generated method stub return false; } }
最近下载更多
tianshi LV7
2023年10月19日
我喔沃窝握卧 LV1
2022年11月26日
唐家俊 LV2
2022年6月8日
ysy121788 LV1
2021年9月17日
Little already LV3
2021年6月22日
Xpyxpy LV2
2021年5月21日
863355189 LV5
2021年5月13日
kkxfmmb
2021年4月2日
暂无贡献等级
a1017514773 LV6
2021年2月6日
木木沐 LV7
2020年11月19日
最近浏览更多
wjs-zuizui
10月19日
暂无贡献等级
shis_y LV1
8月23日
2636804923 LV6
6月20日
微信网友_6522007290040320 LV2
4月15日
亦是此间少年 LV3
3月7日
tianshi LV7
2023年10月19日
wfydwang
2023年9月18日
暂无贡献等级
Yanguu
2023年7月11日
暂无贡献等级
倾城之恋1 LV5
2023年5月21日
dsj52081
2023年5月19日
暂无贡献等级