2012-03-15 57 views
3

我有一個活動,其中是一個MapView的一部分屏幕上。在這裏,我總是將中心定位到給定的點。然後我有另一個活動,整個屏幕上的MapView在哪裏,我的中心位於用戶的位置。當我從整個屏幕MapView活動返回到在部分屏幕上使用MapView進行活動時,我再次調用MapView上的setCenter()。但是現在MapView不是以正確的位置爲中心,而是在其他地方只有幾米。當我使用animateTo()時,一切都按預期工作。它是否有setCenter()錯誤,或者我應該如何向自己解釋這種奇怪的行爲?MapView的setCenter()不能正常工作

回答

4

好了,工作解決方案是使用這樣的:

controller.setCenter(getPoint); 
controller.animateTo(getPoint); 
1

我想可能有多種可能性的setCenter()不起作用。我花了很長時間在自己的setCenter問題上。 animateTo()不能解決我的問題。實際上,從MapController的文檔中,setCenter專門「將地圖視圖設置爲給定的中心,不會有動畫」,所以setCentre()就像沒有動畫一樣移動到那個點。

最終,解決我的問題的人似乎是:我需要在調用setZoom()設置縮放級別後調用setCentre()。

更多信息:我正在使用OSMDroid的mapView和離線地圖。

+0

animateTo()解決方案對我來說沒有任何意義,所以我嘗試了這一點,它爲我工作,所以謝謝! – Ruben2112 2017-05-26 09:40:30