PinFloyd 1.0.4

PinFloyd 1.0.4

Khoa PhamVadym Markov维护。



PinFloyd 1.0.4

PinFloyd

CI Status Version Carthage Compatible License Platform Swift

描述

MapKit 对 iOS 中注解进行集结。

用法

创建 ClusteringManager 实例

let clusteringManager = ClusteringManager()

添加注解

clusteringManager.add(annotations: annotations)

替换注解

clusteringManager.replace(annotations: annotations)

在区域改变时渲染注解

// MKMapViewDelegate
func mapView(_ mapView: MKMapView, regionDidChangeAnimated animated: Bool) {
  clusteringManager.renderAnnotations(onMapView: mapView)
}

重用注解视图

func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {
  switch annotation {
  case let annotation as ClusterAnnotation:
    let id = ClusterAnnotationView.identifier

    var clusterView = mapView.dequeueReusableAnnotationView(withIdentifier: id)
    if clusterView == nil {
      clusterView = ClusterAnnotationView(annotation: annotation, reuseIdentifier: id)
    } else {
      clusterView?.annotation = annotation
    }

    return clusterView
  default:
    // return annotation view
}

安装

PinFloyd 通过 CocoaPods 提供。要安装,只需在您的 Podfile 中添加以下行

pod 'PinFloyd'

PinFloyd 也可通过 Carthage 提供。要安装,只需在您的 Cartfile 中写入

github "vadymmarkov/PinFloyd"

PinFloyd 也可以手动安装。只需下载并将 Sources 文件夹拖放到您的项目中。

作者

Vadym Markov,[email protected]

鸣谢

该库最初由位于 Hyper 的团队开发,Hyper 是一家对 优质代码 和令人愉悦的用户体验充满热情的数字通信机构。

贡献

有关更多信息,请检查 CONTRIBUTING 文件。

许可

PinFloyd 在 MIT 许可下提供。有关更多信息,请参阅 LICENSE 文件。