【问题标题】:Zooming for the markers near the top of the map缩放地图顶部附近的标记
【发布时间】:2015-04-15 05:49:10
【问题描述】:

我已经实现了以下代码,用于在用户单击位置标记时缩放它们。它适用于几乎所有标记,除了靠近地图顶部或底部的标记。缩放地图顶部和底部附近的标记不在确切位置。由于地图首先为相机设置动画,使标记位于屏幕中心,然后在屏幕中心缩放,因此顶部附近的标记无法出现在中心,这就是为什么缩放不在确切位置。有什么办法可以解决这个问题吗?

 googleMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
            @Override
            public boolean onMarkerClick(final Marker marker) {
                CameraUpdate center=
                        CameraUpdateFactory.newLatLng(marker.getPosition());
                CameraUpdate zoom=CameraUpdateFactory.zoomTo(6);
});

我也试过下面的代码,但同样的问题-

    googleMap.animateCamera(CameraUpdateFactory.newLatLng(marker.getPosition()));
googleMap.animateCamera(CameraUpdateFactory.zoomBy(2));

【问题讨论】:

    标签: android google-maps google-maps-markers


    【解决方案1】:

    试试下面的方法,我试过了,效果很好,不知道是否满足你的要求:

    googleMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
                @Override
                public boolean onMarkerClick(final Marker marker) {
    //                CameraUpdate center=
    //                        CameraUpdateFactory.newLatLng(marker.getPosition());
    //                CameraUpdate zoom = CameraUpdateFactory.zoomTo(6);
    //                return true;
    
                    googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(marker.getPosition(),15));
                    // Zoom in, animating the camera.
                    googleMap.animateCamera(CameraUpdateFactory.zoomIn());
                    // Zoom out to zoom level 10, animating with a duration of 2 seconds.
                    googleMap.animateCamera(CameraUpdateFactory.zoomTo(15), 2000, null);
                    return true;
                }
            });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-11
      • 2011-03-31
      • 1970-01-01
      • 1970-01-01
      • 2014-07-10
      相关资源
      最近更新 更多