1. 程式人生 > >百度地圖Marker點 縮放圖示移動問題

百度地圖Marker點 縮放圖示移動問題

1.首先你要知道marker在地圖上是在一個圖層上的,與地圖是無關的,就像在手機屏一樣,你的marker是放在外屏上的,不論你怎麼操作內屏的內容,與外屏上的裂紋是無關的。在百度地圖中Marker點最下方不是尖頭的會出現在地圖放大縮小時 感覺Marker好像定位點是會變的,據我專案中分析是百度地圖設定marker 時 就是中心點是在以marker點的圖示所構成長方形的底邊中心點上的,最終你在縮放時,地圖進行縮放變化,而與marker是無關的。所以在縮放時在視覺上會造成視覺誤差感覺像是會移動一樣。

解決辦法:經過仔細查詢api 發現marker可以設定錨點,詳細marker方法請看點選開啟連結

設定錨點方法是:

public void setAnchor(float anchorX,float anchorY)
設定 Marker 覆蓋物的錨點比例,預設(0.5f, 1.0f)水平居中,垂直下對齊
引數:
anchorX - [0.0f , 1.0f], 否則不生效 

anchorY - [0.0f , 1.0f], 否則不生效

就相當於選取一個長方形的某一個點作為中心點的座標。