更改 mapView 的区域(缩放)Swift

Change the region (zoom) for mapView Swift

我有一张地图,我在两个图钉之间画了一个目的地,我也总是打开一个标注。

我的问题是我想再缩小一点,但我尝试用这段代码来做,但没有成功。

let span = MKCoordinateSpanMake(0.0275, 0.0275)
let coodinate = self.meLocation!
let region = MKCoordinateRegion(center: coodinate, span: span)
self.mapView.setRegion(region, animated: true)

我假设让目的地线路解决问题:

func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer {
        let renderer = MKPolylineRenderer(overlay: overlay)
        renderer.strokeColor = UIColor(red: 2.0/255.0, green: 202.0/255.0, blue: 246.0/255.0, alpha: 1.0)
        renderer.lineWidth = 2.8



        return renderer

    }

所以我的问题是如何默认缩小一点。

编辑:

我关注了this guide

您需要 setRegion 要缩放。这可能会帮助您设置区域。

谢谢:)

缩放级别取决于跨度。尝试更改这些值:

let span = MKCoordinateSpanMake(0.0275, 0.0275)

编辑:

根据讨论,填充更适合您的地图。

尝试像这样填充边缘:

self.mapView.setVisibleMapRect(self.mapView.visibleMapRect, edgePadding: UIEdgeInsetsMake(40.0, 20.0, 20, 20.0), animated: true)

更改值以获得更好的拟合。

注意:在以下时间调用它:

self.mapView.setRegion(MKCoordinateRegionForMapRect(rect), animated: true)