拖动SWIFT期间的MKAnnotation坐标

时间:2017-08-23 05:52:52

标签: swift mkmapview

我正在尝试将一个mapView上的折线重新绘制到MKAnnotation和从MKAnnotation重绘,但是只有在我放下引脚时它才会重绘,并且我希望即使在拖动引脚时线也会继续重绘。

我已经在目标C Seeing MKAnnotation Coordinates During Drag中看到了这个问题,但是,不确定如何在swift中做类似的事情。

这里是我创建pin的地方,它是一个自定义的mkAnnotation。

         self.holeCenterCoordinates = CLLocationCoordinate2DMake(holeX, holeY)
        self.centerpin.coordinate = self.holeCenterCoordinates
        self.centerpin.draggable = true
        self.centerpin.imageName = "mapDragCircle.png"
        self.holeMap.addAnnotation(self.centerpin)
    })

这是我添加行的地方:

    let userToCenter = [self.centerpin.coordinate, manager.location?.coordinate] as! [CLLocationCoordinate2D]
    let centerToGreen = [greenCenter2D, self.centerpin.coordinate]


    let polyline = MKPolyline(coordinates: userToCenter, count: userToCenter.count)
    let polyline2 = MKPolyline(coordinates: centerToGreen, count: centerToGreen.count)
        holeMap.add(polyline2)
    let overlays = self.holeMap.overlays
    holeMap.removeOverlays(overlays)
    holeMap.add(polyline)
    holeMap.add(polyline2)

1 个答案:

答案 0 :(得分:0)

当您将针拖到另一个位置时,然后获取该新针位置的纬度和经度,然后首先清除旧折线并使用新的针位置绘制新折线。