ClusterKit для Mapbox не работает правильно? - PullRequest
1 голос
/ 17 марта 2019

Итак, я попытался реализовать ClusterKit proj , чтобы кластеризовать аннотации / (возможно, полилинии) (, учитывая, что Mapbox не имеет такой функциональности ) в моем приложении, но этоне похоже на работу.Никаких ошибок или чего-то еще, это просто ничего не делает, и я не уверен, что делаю неправильно.

Вот соответствующий код:

 viewDidLoad() {
        let algorithm = CKNonHierarchicalDistanceBasedAlgorithm()
        algorithm.cellSize = 200
        mapView1.clusterManager.algorithm = algorithm
        fetchData() //This is a call to firebase I add the annotations to an  array of them inside an annotations object. 
        setupCluster() //This gest called multiple times IDK why, not sure if its the issue but I have been unable to change this
  }

    func setupCluster() {

            mapView1.clusterManager.marginFactor = 1
            print(ObjAnnotationArray.annotations, " These are teh annotations")
            mapView1.clusterManager.annotations = ObjAnnotationArray.annotations
    }

Это методы delagete, где я добавил функциональность, как указано в документах ,

`    @nonobjc func mapView(_ mapView: MGLMapView, regionDidChangeAnimated animated: Bool) {
        print("Change ")
        mapView.clusterManager.updateClustersIfNeeded()
    }
`    func mapView(_ mapView: MGLMapView, didSelect annotation: MGLAnnotation) {

        print(annotation," ",(annotation as? CKCluster)?.count, " also: ",annotation as? CKCluster)

        if let cluster = annotation as? CKCluster, cluster.count > 1 {
            print("inside if the k=cluser functionaluty")

            let edgePadding = UIEdgeInsets(top: 40, left: 20, bottom: 44, right: 20)
            let camera = mapView.cameraThatFitsCluster(cluster, edgePadding: edgePadding)
            mapView.setCamera(camera, animated: true)
        }
}

Любая помощь / предложения о том, как решить эту проблему?

Я посмотрел здесь их пример но я не могу найти решение там сам.

Также, вот вики о том, как реализовать, за которой я следовал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...