在項目中大量地使用到了百度地圖,所以對百度地圖SDK的使用很熟悉,對百度地圖SDK有比較深的理解。編碼
現將關於百度地圖的幾點說明以下:code
1、地圖的顯示和地圖類型等等(包括一些可能在實際項目開發中遇到的小的細節)orm
一、顯示地圖:mapView = findViewById(R.id.mapView); baiduMap = mapView.getMap(); baiduMap.setMapType(...)對象
這裏能夠設置地圖類型爲普通地圖和衛星圖,分別對應兩個常量:BaiduMap.Map_Type_Normal和BaiduMap.什麼什麼,這個我忘了。接口
二、將地圖設置成俯視,開啓路況,開啓熱力圖。 無非就是用封裝的一些方法和類,將地圖設置成俯視,就是經過MapStatus這個類,設置角度,經過overlook,開啓路況和熱力圖就是調用一些方法,給一個true。
開發
三、隱藏百度logo和百度地圖SDK自帶的縮放按鈕。get
原理就是對mapView的子View進行處理,將其設置爲不可見或者隱藏。 在隱藏百度logo時就是將下標爲1的子View判斷一下,若是是ImageView或者ZoomControls的實例,則將其設置爲不可見。在隱藏自帶的縮放按鈕時,把全部的子View進行判斷,只要是ZoomControls的實例,就將其設置爲隱藏。it
四、自定義縮放按鈕。原理就是經過MapStatusUpdateFactory類的zoomIn方法和zoomOut方法,zoomIn()是放大,zoomOut()是縮小。 有一個zoomLevel,有一個上限和下限,分別是18和4。zoomLevel = baiduMap.getMapStatus().zoomio
2、定位百度地圖
第一步:開啓定位圖層
setMyLocationEnabled(true);
第二步:建立LocationClient對象
第三步:註冊監聽器
第四步:設置參數:好比座標類型
第五步:開啓定位,start();
3、地理編碼和反地理編碼
就是實現OnGetGeoCoderResultListener接口,重寫onGetGeoCodeResult方法和onGetReverseGeoCodeResult方法,一個地理編碼,一個是反向地理編碼。經過GeoCoder這個類的geocode方法和reverseGeoCode方法。
4、檢索:好比在線建議搜索、POI(興趣點)檢索。
在線建議搜索就是實現OnGetSuggestionResultListener接口,而後重寫onGetSuggestionResult方法。使用SuggestionSearch這個類的requestSuggestion方法
POI(興趣點)檢索就是實現OnGetPoiSearchResultListener接口,而後重寫onGetPoiResult方法和onGetPoiDetailResult方法。poi檢索有三種:周邊,區域以及城市內,經過PoiSearch這個類的方法做爲入口進行poi檢索
5、路徑規劃
就是實現OnGetRoutePlanResultListener接口,而後重寫onGetDrivingRouteResult方法、onGetTransitRouteResult方法、onGetWalkingRouteResult方法,分別對應駕車、公交、步行三種方式。經過RoutePlanSearch這個類做爲入口實現路徑規劃
6、全景圖(panorama)