百度地圖集成_POi搜索和正反地理編碼

POI搜索分好多種,主要以城市內(nèi)搜索為例講解:

一.POi搜索


1.先說一下需要用到的類:

BMKMapView:地圖類

BMKPoiSearch :搜索服務(wù)類

BMKCitySearchOption :搜索包裝的參數(shù)類

2.搜索需要傳遞的參數(shù)為:以下4個(gè)

1.city,所在的城市

2.keyword,搜索的關(guān)鍵字(如美食,酒店等)

3.pageCapacity,搜索的分頁數(shù)量(默認(rèn)為10,最多為50)

4.pageIndex,搜索的頁碼(默認(rèn)為0)


3.各種代理方法調(diào)用順序

首先從整體來說:

BMKCitySearchOption 的對(duì)象作為包裝參數(shù)cityOption,通過BMKPoiSearch的對(duì)象self.poiSearch調(diào)用poiSearchInCity,

BOOL flag =[self.poiSearch poiSearchInCity:cityOption]

之后通過BMKSearchDelegate的onGetPoiResult:方法

告訴用戶獲得到搜索返回的數(shù)組列表,在onGetPoiResult中包裝成若干個(gè)大頭針模型,之后把大頭針模型添加到地圖上,如:[self.mapView addAnnotations:annotionArray];

分別先后調(diào)用了BMKMapViewDelegate 的viewForAnnotation: (目的:根據(jù)傳過來的annotion生成對(duì)應(yīng)的View)和didAddAnnotationViews: (之后添加到地圖上)的2個(gè)方法,完成搜索到的信息在地圖上展示的功能。

綜上:方法調(diào)用順序?yàn)閜oiSearchInCit:------->onGetPoiResult------->viewForAnnotation(每添加一次調(diào)用一次)------->didAddAnnotationViews(每添加一次調(diào)用一次),最終完成了地圖上的Poi(興趣點(diǎn))搜索功能。


二.地理編碼和反地理編碼

正向地理編碼指的是:告訴地方名稱,編碼出經(jīng)緯度

反向地理編碼指的是:告訴地理經(jīng)緯度,編碼出地方名稱

不要搞混了哦!

1.用到的類:

BMKMapView:地圖類

BMKGeoCodeSearch:地理反地理編碼類

BMKGeoCodeSearchOption:地理編碼編碼參數(shù)類

BMKReverseGeoCodeOption:反地理編碼編碼參數(shù)類

2.調(diào)用順序:

1.正向地理編碼

1.[self.geoSearch geoCode:geoSearchOption] 觸發(fā)了正向地理編碼

通過BMKGeoCodeSearchDelegate 的onGetGeoCodeResult:方法獲得到編碼的信息(可以展示),也可以通過[self.mapView addAnnotation:item];調(diào)用BMKMapViewDelegate的viewForAnnotation:這個(gè)方法,在里面通過大頭針模型生成大頭針View展示到地圖上,完成正向地理編碼。

2.反向地理編碼

同上:(只是代理方法稍微不同,詳見Demo)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容