Android淮安市主要公交线路查询系统设计与实现(7)
时间:2022-05-06 23:51 来源:毕业论文 作者:毕业论文 点击:次
if (poiResult。error == SearchResult。ERRORNO。NO_ERROR) {// 检索结果正常返回 bdMap。clear(); MyPoiOverlay poiOverlay = new MyPoiOverlay(bdMap); poiOverlay。setData(poiResult);// 设置POI数据 bdMap。setOnMarkerClickListener(poiOverlay); poiOverlay。addToMap();// 将所有的overlay添加到地图上 poiOverlay。zoomToSpan(); } } 通过以上代码,就能实现POI检索功能了。 4。5 公交信息检索 实际上,公交信息检索与POI检索非常相似,也是把你需要检索的信息发送给百度地图服务器,然后解析得到的结果。 一般步骤: 1。 设置检索参数 2。 添加检索结果监听器 3。 发起检索 4。 解析返回结果 所以进行公交信息检索之前,需要先进行POI检索。使用searchInCity()方法在每一个城市内查询公交路线号: city = cityEt。getText()。toString(); 文献综述 busline = buslineEt。getText()。toString(); poiSearch。searchInCity((new PoiCitySearchOption())。city(city) 。keyword(busline)); 得到poi检索的结果时,在PoiResult类中有通过getAllPoi()获取poi检索结果。 @Override public void onGetPoiResult(PoiResult poiResult) { if (poiResult == null || poiResult。error == SearchResult。ERRORNO。RESULT_NOT_FOUND) {// 没有找到检索结果 Toast。makeText(BusLineSearchActivity。this, "未找到结果", Toast。LENGTH_LONG)。show(); return; } if (poiResult。error == SearchResult。ERRORNO。NO_ERROR) {// 检索结果正常返回 // 得到检索结果 } } 在PoiInfo类中有个type字段:0:普通点 1:公交站 2:公交路线 3:地铁站 4:地铁线路, 通过判断type,将正确的公交路线uid添加到一个list中。得到了uid,就可以结合城市参数,进行公交线路检索了。 if (poi。type == PoiInfo。POITYPE。BUS_LINE || poi。type == PoiInfo。POITYPE。SUBWAY_LINE) { buslineIdList。add(poi。uid); } 5 系统设计与实现 5。1 功能模块设计 系统主要功能包括定位,线路查询、路线查询和图层设置四块内容,如下图5-1所示, (责任编辑:qin) |