经过对这个有用的网站进行大量研究,我放下了枪...
我有一张带有许多注释的地图。 我将设置边界,以使用户停留在想要的地方。 我找到的所有文档都是针对 Objective C 和之前的 iOS。
请问有没有一种方法可以在IOS 8和Swift上实现呢?
我没有检查过,但从逻辑上讲,这里的答案会对你有用。你可以通过计算超出边界来重置所需地理坐标之间的区域。我不擅长Swift,但你可以尝试下面的代码。
func mapView(mapView: MKMapView!, regionDidChangeAnimated animated: Bool) {
if ((mapView.region.span.latitudeDelta > 15.589921 ) || (mapView.region.span.longitudeDelta > 175.836914) ) {
var centerCoord:CLLocationCoordinate2D = CLLocationCoordinate2DMake(-41.162114, 172.836914);
var spanOfNZ:MKCoordinateSpan = MKCoordinateSpanMake(13.589921, 14.062500);
var NZRegion:MKCoordinateRegion = MKCoordinateRegionMake(centerCoord, spanOfNZ);
mapView .setRegion(NZRegion, animated: true);
}
}