【问题标题】:How to change proximity of user location annotation [duplicate]如何更改用户位置注释的接近度[重复]
【发布时间】:2016-07-18 10:18:07
【问题描述】:

如何更改userLocation annotation 生成的邻近度。
我说的是userLocation annotation 围绕它创建的褪色蓝色圆圈。如何更改它的半径?

【问题讨论】:

    标签: ios objective-c mapkit mapkitannotation


    【解决方案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;
    

    【讨论】:

    • 会不会很棘手?就像当接近会遇到注释时它会做些什么?
    • 是的,因为它实现了@interface SVPulsingAnnotationView : MKAnnotationView@Talha Ch
    • 我按照你说的实现了它,首先我使用 pod 来包含这个库。然后它向我显示错误,在代码pulseScaleFactor 中找不到#import "SVAnnotation.h" 之后找不到。怎么办?
    • 我根据搜索pulseScaleFactor 找到了这个github.com/phunware/maas-mapping-ios-sdk,它会起作用吗?
    • SVAnnotation.hSVAnnotation.m 将在上面给定链接的库中,您必须将其添加到您的项目中@TalhaCh
    猜你喜欢
    • 2016-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多