HSClusterMapView 1.0.5

HSClusterMapView 1.0.5

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布最新发布2016年7月

Alan Bouzek 维护。



  • abouzek

描述

HSClusterMapView 是 GMSMapView(Google iOS SDK 地图)的子类,它将多个 GMSMarkers 聚集成单个 GMSMarker,这样开发者就可以在运行时为每个聚类标记生成自定义的 UIImage。

还包含一个 GMSMapView 的子类,HSMapView,它将跟踪 GMSMapView 上的标记,这对于想要在 GMSMapView 外部保持想要显示在地图上的 GMSMarker 对象的开发者来说是不一样的。

HSClusterMapView 和 HSMapView 的目标是提供更一致和功能更齐全的接口,以便与 Google Maps for iOS SDK 一起使用。

示例

alt tag

要运行示例项目,请克隆仓库,然后首先从 Example 目录中运行 pod install

基本用法

应使用以下初始化器创建 HSClusterMapView 的实例

- (instancetype)initWithFrame:(CGRect)frame renderer:(id<HSClusterRenderer>)renderer;

其中 renderer 负责为地图上显示的每个聚类生成一个 UIImage。然后,调用以下内容以将标记添加到地图并调用以下内容以进行聚类:

- (void)addMarker:(GMSMarker *)marker;

到添加标记到地图

- (void)cluster;

到执行聚类

在您使用 HSClusterMapView 或 HSMapView 时,不需要设置 GMSMarker 的 "map" 属性!

进一步用法

HSClusterMapView 有许多可自定义的参数,如

@property CLLocationDistance clusterSize;
@property NSUInteger minimumMarkerCountPerCluster;
@property BOOL clusteringEnabled;

HSMapView 是 HSClusterMapView 的父类,并具有 GMSMapView 没有的有用方法,如

- (void)addMarker:(GMSMarker *)marker;
- (void)addMarkers:(NSArray *)markers;
- (void)removeMarker:(GMSMarker *)marker;
- (void)removeMarkers:(NSArray *)markers;

以及额外的属性

@property MKCoordinateSpan visibleSpan;
@property CGFloat visibleRadiusInMiles;
@property NSArray *displayedMarkers;

文档

HSClusterMapView、HSMapView 及其关联类在 CocoaDocs 上有完整文档此处

安装

HSClusterMapView 通过 CocoaPods 提供。要安装它,请简单地将其添加到您的 Podfile 中:

pod "HSClusterMapView"

许可证

HSClusterMapView 可在 MIT 许可证下使用。有关更多信息,请参阅 LICENSE 文件。