我正在尝试将最小缩放级别设置为15,并且用户无法缩小该级别,但他可以放大到20。
因此,在整个应用程序中,用户可以使用缩放功能(true)但不能超出缩放级别15.我应该在15后禁用缩放吗?但这甚至会禁用放大。
在这种情况下,我不知道如何管理一个条件。我该怎么做。我真的很感激任何帮助
在此先感谢
public OnCameraChangeListener getCameraChangeListener()
{
return new OnCameraChangeListener()
{
@Override
public void onCameraChange(CameraPosition position)
{
Log.d("Zoom", "Zoom: " + position.zoom);
if(previousZoomLevel != position.zoom)
{
isZooming = true;
if(zoomscale==15){
googleMap.getUiSettings().setZoomGesturesEnabled(false);
googleMap.getUiSettings().setZoomControlsEnabled(false);
}
}
previousZoomLevel = position.zoom;
}
};
}
答案 0 :(得分:2)
截至当前版本(3.2.65),没有用于设置最小/最大缩放级别的API 希望将来会有,gmaps-api-issues已经要求。
无论如何,有一种方法可以在您自己的代码中很好地处理它:在onCameraChange
中,如果缩放小于15,请调用GoogleMap.animateCamera
返回缩放15.它不会阻止用户缩小看到整个世界,但它会在用户完成他们想做的事情之后开始放大。它看起来与此类似:http://youtube.com/watch?v=-nCZ37HdheY(不仅缩放,而且位置也被“纠正”)。
答案 1 :(得分:2)
mMap.setMinZoomPreference(float yourDesiredLevel)
;