5

当地图视图处于 MKUserTrackingModeFollowWithHeading 模式时,我想缩小以包含最近的注释。

我试图像这样设置区域:

MKCoordinateRegion currentRegion = self.mapView.region;
currentRegion.span.latitudeDelta *= 4;
currentRegion.span.longitudeDelta *= 4;
[self.mapView setRegion:currentRegion];

这会将地图缩小 4 倍,但启用用户跟踪后,iOS 会自动通过动画放大回原始缩放级别。我无法坚持任何地区。我假设 MapRect 会有相同的行为,但我还没有尝试过。

有谁知道另一种方法来做到这一点?

根据 setUserTrackingMode 的文档:

如果地图被缩小,地图视图会自动放大用户的位置,有效地改变当前的可见区域。

所以我意识到这可能是不可能的。但是,用户可以捏缩小,并且用户跟踪模式保持启用而无需放大。非常感谢任何创意。

4

1 回答 1

1

使用内置跟踪模式时,您无法控制缩放行为。您可能想查看类似MapBox iOS SDK的东西,它具有与 MapKit 相同的外观和行为,但允许您自定义此行为。

于 2013-09-23T15:51:12.250 回答