我认为OnCameraChangeListener会做到这一点。
map.setOnCameraChangeListener(new OnCameraChangeListener() {
private float currentZoom = -1;
@Override
public void onCameraChange(CameraPosition position) {
if (position.zoom != currentZoom){
currentZoom = position.zoom; // here you get zoom level
}
}
});
更新:
来自Google Play服务9.4.0 OnCameraChangeListener已被弃用,它将很快不再工作。或者,它们被OnCameraMoveStarted Listener,OnCameraMoveListener,OnCameraMoveCancel edListener和OnCameraIdleListener取代。
因此,我们可以在此处使用OnCameraIdleListener来获取相机的当前变焦级别。
代码示例:
map.setOnCameraIdleListener(new GoogleMap.OnCameraIdleListener() {
@Override
public void onCameraIdle() {
int zoomLevel = map.getCameraPosition().zoom;
//use zoomLevel value..
}
});