如何在 android 中放大地图 activity 中的标记

How to zoom in on a marker in a map activity in android

您好,我想知道如何在 android 中慢慢放大地图 activity 中的标记。目前我的应用程序只是在标记上放大打开。我希望它在应用程序打开时慢慢放大。

这是我当前的代码

LatLng mark = new LatLng(21.197384, 6.369441);
mMap.addMarker(new MarkerOptions().position(mark).title("Marker for Mark"));
mMap.moveCamera(CameraUpdateFactory.newLatLng(mark));
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel));

使用mMap.animateCamera代替mMap.moveCamera

此外,您可以control the duration of the movement使用

animateCamera (CameraUpdate update, int durationMs, GoogleMap.CancelableCallback callback)

在您的示例中,更改

mMap.moveCamera(CameraUpdateFactory.newLatLng(mark));
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel));

mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel));

或者,如果您希望运动持续 200 毫秒:

mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel), 200, null);

尝试 mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel)); 而不是

mMap.moveCamera(CameraUpdateFactory.newLatLng(mark));
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(mark, zoomLevel));

这样就可以实现了--

CameraUpdate center= CameraUpdateFactory.newLatLng(new LatLng(latitude_origin, longitude_origin));
CameraUpdate zoom = CameraUpdateFactory.newLatLngZoom(new LatLng(latitude_origin, longitude_origin),3);
  googleMap.animateCamera(center);
  googleMap.animateCamera(zoom);

希望对您有所帮助!