在 Google 地图中缩放相机

Zoom camera in Google Map

我想在用户点击时放大 marker.I 尝试使用 -

 googleMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener()
            {
                @Override
                public boolean onMarkerClick(final Marker marker)
                {
                  googleMap.animateCamera(CameraUpdateFactory.zoomBy(3));
                    slidingPaneLayout.setPanelHeight(700);





            });

我也试过了

googleMap.animateCamera(CameraUpdateFactory.zoomIn());

但它没有缩放

可能是Marker的点击事件和缩放动画冲突了。您可以尝试添加超时:

 import android.os.Handler;

 Handler handler = new Handler();
 googleMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener()
        {
            @Override
            public boolean onMarkerClick(final Marker marker)
            {
              handler.postDelayed(new Runnable() {
                 googleMap.animateCamera(CameraUpdateFactory.zoomBy(3));
              }, 200);
              return true;
            });

这会使动画调用的执行延迟 200 毫秒。还要确保 return true,因为这表明您已经使用了该事件(参见 documentation)。没试过,但这可能有用。

尝试将此代码添加到您的 marker onclick event

{LatLng yournewposition = new LatLng(latitude, longitude);
    CameraPosition cameraPosition = CameraPosition.builder()
                    .target(yournewposition).zoom(10).build();
            yourmapobject.animateCamera(CameraUpdateFactory
                    .newCameraPosition(cameraPosition));}

-谢谢!