繁体   English   中英

使用UISlider在MKMapView上将半径更改为MKCircle

[英]Change radius to MKCircle on MKMapView with UISlider

我试图通过移动UISlider来改变MKCircle的半径。 问题是MKCircleradius属性是readonly

我试过这样的方式:

- (void)sliderValueChanged:(UISlider *)sender
{
    self.radiusLabel.text = [NSString stringWithFormat:@"%i mt", value];

    MKCircle * oldC = (MKCircle *)self.mapView.overlays[0];

    MKCircle * c = [MKCircle circleWithCenterCoordinate:self.lastLocation.coordinate radius:value];

    [self.mapView addOverlay:c];

    [self.mapView removeOverlay:oldC];
}

但渲染非常缓慢,并且逐行渲染圆形(如石英中的pdf)。 是否有更好更快的方法来改变半径?

谢谢...

您可能对此问题的答案感兴趣: 在MKMapView上移动/更新MKOverlay

基本上,您不是删除旧圆圈并添加新圆圈,而是调整当前圆圈并告诉mapview重绘该区域。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM