ResizableMKCircleOverlay 0.1.0

ResizableMKCircleOverlay 0.1.0

测试已测试
语言语言 Obj-CObjective C
许可证 自定义
发布者最后发布者2014年12月

Michael Bawiec 维护。




  • OrbJapan

可调整大小的地图圆形叠加层。

目标

实现一个可调整大小的圆形叠加层,无需重新创建 MKCircle 对象。

如何使用

CustomMapOverlay 是 MKCircleView 的子类。在您的地图控制器中重写 'viewForOverlay' 方法,使用自定义类。

- (MKOverlayRenderer *)mapView:(MKMapView *)mapView rendererForOverlay:(id < MKOverlay >)overlay{
    circleView = [[CustomMKCircleOverlay alloc] initWithCircle:overlay];
    circleView.fillColor = [UIColor redColor];

    return circleView;
}
初始化

-(id)initWithCircle:(MKCircle *) circle withRadius:(double)radius withMin:(int) min withMax:(int) max;
-(id)initWithCircle:(MKCircle *) circle withRadius:(double)radius;
-(id)initWithCircle:(MKCircle *) circle;

-radius 总是以米为单位
-min/max 设置圆形的最小和最大尺寸(也是以米为单位)。

更新圆形

-(void)setCircleRadius:radius; - 设置圆形半径。
-(void)setFillColor:UIColor; - 设置圆形颜色。

@property(nonatomic) CGFloat alpha; // 默认 = .3
@property(nonatomic) CGFloat border; // 默认 = 15

此类本身不处理手势,因此您需要自行实现或查看示例项目。示例项目使用了 'WildcardGestureRecognizer' 来检测叠加层是否被触摸。