mMapController.animateTo(mAllSpots.get(0));
mMapController.setCenter(mAllSpots.get(0));
mMapController.setZoom(getZoomSize(mAllSpots));
有11個不同點,我想在'mapview'上顯示它們,同時我想看'mapview'上的所有11個點。那麼什麼是合適的縮放級別?謝謝。如何在'mapview'上設置合適的縮放級別?
mMapController.animateTo(mAllSpots.get(0));
mMapController.setCenter(mAllSpots.get(0));
mMapController.setZoom(getZoomSize(mAllSpots));
有11個不同點,我想在'mapview'上顯示它們,同時我想看'mapview'上的所有11個點。那麼什麼是合適的縮放級別?謝謝。如何在'mapview'上設置合適的縮放級別?
mMapController.animateTo(mAllSpots.get(0));
此1是用於指向裝置平移的特定地圖/限定位置爲給定的參數,
mMapController.setCenter(mAllSpots.get(0));
此圖1是用於根據給定的參數作爲位置值爲中心地圖
mMapController.setZoom(getZoomSize(mAllSpots));
這個1是套你需要使用此方法
mMapController.zoomToSpan(latSpan, longSpan);
縮放級別
這裏的latSpan和longSpan是由maxlat-minlat和maxlng-minlng定義的,首先你需要找到minlat,minlng和maxlat,maxlng,而不是將它解釋爲任何你必須通過的值,將作爲縮放,動畫,中心一起
編輯
你需要找到的MapView這會給你的maplatspan喜歡假設你的積分獲得,
p1 = 20.212323,68.803209;
p2 = 20.222342,68.889898;
p3 = 22.212232,68.802093;
現在明白了分LAT,minlng和maxlat,maxlng然後。減去它,這點是必然的rect點作爲矩形,並找到作爲當前矩形的中心點
minlat = 20.212232,minlng = 68.802093,maxlat = 22.212232,maxlng = 68.889898
latspan = maxlat - minlat,lngspan = maxlng - minlng
還需要轉換成的GeoPoint與像latspan * 1E6和lngspan * 1E6 1E6到乘以現在傳遞給函數
你應該使用ItemizedOverlay實現來顯示你的觀點。如果你這樣做,你也可以使用這些方便的方法爲你做所有的工作:
// Sets zoom to a level that will show all of your points.
mapView.getController().zoomToSpan(itemizedOverlay.getLatSpanE6(),
itemizedOverlay.getLonSpanE6());
// Animates to center (mean, mean) of points.
mapView.getController().animateTo(itemizedOverlay.getCenter());
非常感謝!但是,當我用這樣的代碼@覆蓋 \t保護無效在onStart(){ \t \t mMapController.zoomToSpan它不工作(mMapView.getLatitudeSpan(), \t \t \t \t mMapView.getLongitudeSpan()); \t \t super.onStart(); \t}你能給我一些建議嗎? – stream 2012-01-16 08:37:49
檢查更新回答 – Pratik 2012-01-16 08:49:29
尼斯。我已經解決了這個問題。謝謝。 – stream 2012-01-16 09:42:30