【问题标题】:Change radius to MKCircle on MKMapView with UISlider使用 UISlider 在 MKMapView 上将半径更改为 MKCircle
【发布时间】:2013-07-03 14:52:55
【问题描述】:

我正在尝试通过移动UISlider 来更改MKCircle 的半径。 问题是MKCircleradius 属性是只读

我是这样尝试的:

- (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 一样)。 有没有更好更快的方法来改变半径?

谢谢...

【问题讨论】:

    标签: iphone ios mkmapview uislider


    【解决方案1】:

    您可能对此问题的答案感兴趣:moving/updating MKOverlay on MKMapView

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

    【讨论】:

    • MKCircle 符合 MKOverlay 协议
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-21
    相关资源
    最近更新 更多