Ber*_*rgP 3 iphone mapkit mkmapview ios
我创建了这样的新叠加层:
MKCircle *circle = [MKCircle circleWithCenterCoordinate:region.coordinate radius:region.radius];
[self.mapView addOverlay:circle];
Run Code Online (Sandbox Code Playgroud)
我也实现了委托方法:
- (MKOverlayRenderer *)mapView:(MKMapView *)mapView rendererForOverlay:(id<MKOverlay>)overlay {
MKCircleRenderer *circleRenderer = [[MKCircleRenderer alloc] init];
circleRenderer.fillColor = [UIColor greenColor];
circleRenderer.alpha = 1.f;
return circleRenderer;
}
Run Code Online (Sandbox Code Playgroud)
代码的两个部分都被调用了,mapView!= nil当时,它是委托集,但是我在地图上看不到圆圈.
我究竟做错了什么?
根据@Rob建议,您需要init MKCircleRenderer使用其他方法initWithCircle.
- (MKOverlayRenderer *)mapView:(MKMapView *)mapView rendererForOverlay:(id<MKOverlay>)overlay {
MKCircleRenderer *circleRenderer = [[MKCircleRenderer alloc] initWithCircle:overlay];
circleRenderer.fillColor = [UIColor greenColor];
circleRenderer.alpha = 1.f;
return circleRenderer;
}
Run Code Online (Sandbox Code Playgroud)
还要确保栅栏距离足以在地图中看到圆圈.
例如:
CLLocationDistance fenceDistance = 100000;
MKCircle *circle = [MKCircle circleWithCenterCoordinate:region.coordinate radius:fenceDistance];
[self.mapView addOverlay:circle];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1750 次 |
| 最近记录: |