Ste*_*ett 10
所以我想通了......
下面是我如何与代码一起完成的.
第1步: - 创建 MKCircle
MKCircle *circleOverlay = [MKCircle circleWithCenterCoordinate:zoomLocation radius:300];//radius in meters
Run Code Online (Sandbox Code Playgroud)
第2步: - 设置title并添加到地图叠加层
[circleOverlay setTitle:@"Circle1"];
[_mapView addOverlay:circleOverlay];
Run Code Online (Sandbox Code Playgroud)
第3步: - mapView:rendererForOverlay:在我的MapViewDelegate中实现该方法
-(MKOverlayRenderer *)mapView:(MKMapView *)mapView rendererForOverlay:(id<MKOverlay>)overlay{
if ([overlay isKindOfClass:[MKCircle class]])
{
MKCircleRenderer* aRenderer = [[MKCircleRenderer alloc] initWithCircle:(MKCircle *)overlay];
aRenderer.fillColor = [[UIColor cyanColor] colorWithAlphaComponent:0.2];
aRenderer.strokeColor = [[UIColor blueColor] colorWithAlphaComponent:0.7];
aRenderer.lineWidth = 3;
return aRenderer;
}else{
return nil;
}
}
Run Code Online (Sandbox Code Playgroud)
就是这样!繁荣!希望它能帮助将来的某个人!不确定这是否是最好的方式,但它实现了我的目标!
编辑:确保将mapView的委托设置为self,否则将不会调用所需的委托方法.
| 归档时间: |
|
| 查看次数: |
2092 次 |
| 最近记录: |