我正在尝试在注释周围画一个圆,以显示将被围栏的半径。
在ViewController上方,我有一个协议可以处理用户搜索的结果
protocol HandleMapSearch {
func dropPinZoomIn (placemark:MKPlacemark)
func setUpGeofencing (placemark:MKPlacemark)
func addRadiusCircle(placemark: MKPlacemark)
}
在ViewController类中,我有一个由滑块设置的var range
。
在我的viewDidLoad中,我有mapView.delegate = self
在ViewController类中,我有mapView委托函数,该函数应该有助于画出我的圆圈
func mapView(_ mapView: MKMapView, rendererFor overlay: MKOverlay) -> MKOverlayRenderer {
if overlay is MKCircle {
let circle = MKCircleRenderer(overlay: overlay)
circle.strokeColor = UIColor.red
circle.fillColor = UIColor(red: 255, green: 0, blue: 0, alpha: 0.1)
circle.lineWidth = 1
return circle
} else {
return MKPolylineRenderer()
}
}
我的addRadiusCircle方法看起来像这样
func addRadiusCircle(placemark: MKPlacemark){
let circle = MKCircle(center: (placemark.location!.coordinate), radius: CLLocationDistance(range))
mapView.add(circle)
}
在测试我的应用并搜索位置时,我会在该位置的坐标处得到一个注释,但周围没有圆圈。我尝试画圆的方式是否有问题?任何帮助将不胜感激。