如何在MapKit IOS8和Swift中设置Map的边界

时间:2015-06-18 18:26:05

标签: swift ios8 mapkit

经过对这个有用网站的大量研究,我把枪放下......

我有一张带有很多注释的地图。 我将设置边界,以便用户留在想要的地方。 我发现的所有文件都是针对Objective C和之前的ios。

我正在为IOS 8和Swift寻找一种方法。

1 个答案:

答案 0 :(得分:0)

我没有检查它,但从逻辑上讲,答案here对你有用。你可以通过计算它超出边界来重置所需地理坐标之间的区域。对于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);

    }
}