更新
我需要在MKMapView
上画一个圆,在那里我可以得到圆的半径和它的中心坐标。但是,我也希望圆圈是MKMapView
的子视图,这样地图视图就可以在圆圈下面滚动,随着地图的移动更新它的中心坐标,并在地图放大和缩小时更新它的半径。
有人知道我是如何做到这一点的吗?
这是问题的原文。
我使用下面的代码在MKMapView
上画了一个圆圈:
- (void)viewDidLoad
{
[super viewDidLoad];
self.locationManager = [[CLLocationManager alloc] init];
self.locationManager.delegate = self;
self.region = [MKCircle circleWithCenterCoordinate:self.locationManager.location.coordinate radius:kViewRegionDefaultDistance];
[self.mapView addOverlay:self.region];
}
- (MKOverlayPathRenderer *)mapView:(MKMapView *)map viewForOverlay:(id <MKOverlay>)overlay
{
MKCircleRenderer *region = [[MKCircleRenderer alloc] initWithOverlay:overlay];
region.strokeColor = [UIColor blueColor];
region.fillColor = [[UIColor blueColor] colorWithAlphaComponent:0.4];
return region;
}
这样可以在地图视图上生成一个圆圈。但是,当我滚动地图视图时,圆圈也随之移动。我希望圆圈保持静止不动,并让地图视图在圆圈下方滚动。
重要的是要注意,我将需要获得圆心坐标和半径,以便创建一个区域。因此,我不能简单地在MKMapView上绘制UIView,因为我无法获得以米为单位的UIView的半径。
https://stackoverflow.com/questions/31997919
复制相似问题