在iOS中围绕pin添加多个圆圈

在iOS中围绕pin添加多个圆圈,ios,mkmapview,geometry,Ios,Mkmapview,Geometry,如何在地图中添加和显示不同颜色的多个圆(MKMapView)?我知道了如何添加一个圆圈,但不知道如何添加多个不同大小和颜色的圆圈。。。任何帮助都将不胜感激 下面是我用来在地图上的给定位置画两个同心圆的代码。外面的是灰色的,里面的是白色的。(在我的示例中,“范围”是圆半径)两者都有一定的透明度: -(无效)图纸范围:(CLLocationCoordinated2D)其中{ //首先,我清除所有以前的覆盖: [mapView removeOverlays:[mapView overlays]]; 浮

如何在地图中添加和显示不同颜色的多个圆(
MKMapView
)?我知道了如何添加一个圆圈,但不知道如何添加多个不同大小和颜色的圆圈。。。任何帮助都将不胜感激

下面是我用来在地图上的给定位置画两个同心圆的代码。外面的是灰色的,里面的是白色的。(在我的示例中,“范围”是圆半径)两者都有一定的透明度:

-(无效)图纸范围:(CLLocationCoordinated2D)其中{
//首先,我清除所有以前的覆盖:
[mapView removeOverlays:[mapView overlays]];
浮动范围=[self.rangeCalc currentRange]/每米英里;
MKCircle*outerCircle=[MKCircle circle with center坐标:其中半径:范围];
outerCircle.title=@“拉伸范围”;
MKCircle*内圆=[MKCircle Circle With Center坐标:其中半径:(范围/1.425f)];
innerCircle.title=@“安全范围”;
[地图视图添加覆盖:外圆];
[mapView addOverlay:innerCircle];
}
然后,确保您的类实现了
MKMapViewDelegate
协议,并使用以下方法定义覆盖的外观:

-(MKOverlayView*)地图视图:(MKMapView*)地图视图覆盖:(id)覆盖{
MKCircle*circle=叠加;
MKCircleView*circleView=[[MKCircleView alloc]initWithCircle:circle];
如果([circle.title compare:@“安全范围”]==sensorderedName){
circleView.fillColor=[uicolorWithred:1.0绿色:1.0蓝色:1.0阿尔法:0.25];
circleView.strokeColor=[UIColor whiteColor];
}否则{
circleView.fillColor=[UIColor颜色与红色:0.5绿色:0.5蓝色:0.5阿尔法:0.25];
circleView.strokeColor=[UIColor grayColor];
}
circleView.lineWidth=2.0;
返回回路视图;
}
当然,不要忘记在
MKMapView
对象上设置委托,否则将永远不会调用上述方法:

mapView.delegate=self;

是否同时显示两个圆圈?是。它们在彼此的顶部绘制(在较大的灰色圆圈的顶部绘制较小的白色圆圈)。显然,如果希望两个(或更多)圆具有不同的中心位置,则需要更改“我的代码”,以便不将相同的值传递给两个圆的
circleWithCenterCoordinate: