缩放地图顶部附近的标记

时间:2015-04-14 16:42:27

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

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

 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));

1 个答案:

答案 0 :(得分: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;
            }
        });