MKMapView设置缩放限制而不弹跳

时间:2013-09-11 11:28:16

标签: ios objective-c mkmapview mapkit mkmapviewdelegate

关于MKMapView的最大缩放的stackoverflow有很多问题和答案,例如:

Is there way to limit MKMapView maximum zoom level?

不幸的是,没有答案实际上对我有效(或者我没有正确实施)。我无法模拟原生地图的行为,即限制缩放级别而不“反弹”或重新恢复。

这是我使用的代码:

- (void)mapView:(MKMapView *)mapView regionWillChangeAnimated:(BOOL)animated
{ 
    if( mapView.region.span.latitudeDelta<0.001 || mapView.region.span.longitudeDelta<0.001){
        MKCoordinateRegion region =mapView.region;
        region.span = MKCoordinateSpanMake(0.001, 0.001);
        mapView.region = region;
        [mapView setRegion:mapView.region animated:NO];
    }
}

当用户捏合和缩放地图并且地图达到最大缩放(由我设置)时,地图不应放大然后反弹。有可能吗?

1 个答案:

答案 0 :(得分:0)

据我所知,我不认为实际上可以设置最大变焦或最小变焦而不是自己制作。但我知道如果您使用Google Map SDK,您实际上可以为地图设置最大和最小缩放:https://developers.google.com/maps/documentation/ios/reference/interface_g_m_s_map_view