我之前看到过这个问题,所有回复看起来大致相似。但是,我根本无法让他们中的任何一个为我的项目工作。
我有一个由按钮触发的动作updateMap。它显示了地图上的当前位置(MapKit),并显示了与其位置相关的一些其他信息(地理编码)。所有这一切都很好。我需要做的是在地图上显示其位置周围的半径。以下是我尝试不起作用的内容:
(在updateMap中)
//display radius
CLLocationCoordinate2D center = {current.coordinate.latitude, current.coordinate.longitude};
MKCircle *circle = [MKCircle circleWithCenterCoordinate:center radius:1000];
[self.mapView addOverlay:circle];
("当前"是具有用户当前位置的CLLocation var)
然后,在执行文件中的操作后,我有:
- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id<MKOverlay>)overlay
{
MKCircleView *circleView = [[MKCircleView alloc] initWithOverlay:overlay];
[circleView setFillColor:[UIColor redColor]];
[circleView setStrokeColor:[UIColor blackColor]];
[circleView setAlpha:0.5f];
return circleView;
}
它构建得很好,但地图上没有显示任何圆圈。
此网站上的其他解决方案涉及将第一个代码放在viewDidLoad方法中,但由于该位置尚未计算(仅在上述操作中确定),这对我来说不是一个选项
感谢您的时间和任何帮助。我绝对没有在这里的许多人的水平,所以请原谅我,如果这有一个明显的答案。我不想被勺子喂,我想学习!谢谢你的阅读。