2011-06-15 84 views
0

我使用下面的代碼來放大可查看在MapView的所有點:Android的MapView類:與方法zoomToSpan問題的ItemizedOverlay

mMapController.zoomToSpan(myOverlay.getLatSpanE6(), myOverlay.getLonSpanE6()); 

它的工作原理,但它僅考慮一個問題但不覆蓋,因而使我有以下結果:

problem illustration

反正是有解決這個問題?我在想,手動添加/減去一些緯度/經度getLatSpanE6()/ getLonSpanE6(),但這將是骯髒的,我不知道應該多少加/減。有沒有人有任何想法?

謝謝!

回答

-1
mapView.setBuiltInZoomControls(true); 
MapController mapcontroller = mapView.getController(); 
mapcontroller.animateTo(gp); 
mapcontroller.setCenter(point) 
mapcontroller.setZoom(9); 

根據您的要求,如果你想在回答更加清晰那麼首先你應該閱讀有關givn方法,那麼你瞭解Android的谷歌的文檔集給定方法的價值。我希望你能用它解決你的問題。

+0

我不知道這些針點在第一的確切位置,所以我用zoomToSpan,使所有的人都在一個卵石可見的,因此,我不能確定是什麼「中心「和我應該使用什麼縮放級別。 – hzxu 2011-06-15 07:55:32

+0

我看不出這個答案與問題 – 2015-11-11 09:31:13

1

請參閱我的回答here

你要做的唯一不同的是考慮到覆蓋項目,它的寬度的高度。

即 僞代碼:

projection of (latitude) + width of one overlay 

projection of (longitude) + height of one overlay 
+0

有什麼關係感謝您的回覆,但如果我使用getLatSpanE6/getLonSpanE6,我應該在哪裏添加寬度和高度?地理位置是從數據庫中讀取的,我需要使用:新的GeoPoint((int)(latitude * 1e6),(int)(longitude * 1e6))將其轉換爲Google API接受的一個,是否將它們添加到zoomToSpan(latSpan +寬度,lonSpan +高度)?謝謝! – hzxu 2011-06-15 23:17:55