所以在我当前的应用程序中,我想缩放到一个纬度/经度点,但也使用 animateTo (或等效)来确保屏幕正确居中。目前我只是在做这样的事情:
_mapController.animateTo(new GeoPoint(googleLat, googleLng));
// Smooth zoom handler
int zoomLevel = _mapView.getZoomLevel();
int targetZoomLevel = AppConstants.MAP_ZOOM_LEVEL_SWITCH;
long delay = 0;
while (zoomLevel++ < targetZoomLevel) {
handler.postDelayed(new Runnable() {
@Override
public void run() {
_mapController.zoomIn();
}
}, delay);
delay += 350; // Change this to whatever is good on the device
}
这种工作,但发生的是我的线程开始,在“动画到”完成之前,所以它放大然后“跳跃”以显示正确的中心地理点。有没有办法平滑地“向下钻取”到某个缩放级别,并同时移动到 geoPoint?类似于官方的 Googl eMaps 应用程序如何在您搜索地址后缩放到地址,这就是我想要做的。