如何更改用户位置注释的邻近度

时间:2016-07-18 10:18:08

标签: ios objective-c mapkit mapkitannotation

如何更改userLocation annotation生成的邻近距离。 enter image description here我正在谈论userLocation annotation在它周围创造的褪色的蓝色圆圈。我怎样才能改变它的半径?

1 个答案:

答案 0 :(得分:1)

看看:https://github.com/TransitApp/SVPulsingAnnotationView

从库中添加以下文件:

SVAnnotation.h
SVAnnotation.m

SVPulsingAnnotationView.h
SVPulsingAnnotationView.m

导入:

#import "SVAnnotation.h"
#import "SVPulsingAnnotationView.h"

使用SVPulsingAnnotationView您可以将pulseScaleFactor属性设置为更改半径,在找到UserLocation时使用viewForAnnotation方法中的以下代码:

        static NSString *identifier = @"currentLocation";
        SVPulsingAnnotationView *pulsingView = (SVPulsingAnnotationView *)[self.mapView dequeueReusableAnnotationViewWithIdentifier:identifier];

        if(pulsingView == nil) {
            pulsingView = [[SVPulsingAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:identifier];
            pulsingView.annotationColor = [UIColor colorWithRed:0.678431 green:0 blue:0 alpha:1];
            pulsingView.pulseScaleFactor=7.0;//Change pulseScaleFactor as required
            pulsingView.canShowCallout = YES;
        }

        return pulsingView;