Swift mapView加载更多引脚

时间:2016-06-02 13:20:20

标签: swift annotations mkmapview mapkit

我有一种方法可以在地图上显示多个注释。它的大约10 000个注释,所以我必须只显示当前时间在地图上可见的注释。当我使用map i移动时,执行返回带有可见坐标的对象的方法。但我的方法将删除所有这些并开始逐个添加它们。我的目标是当我呈现Annotations并且我移动地图时我想保留那些可见的并且其他人移除。我正在使用这个和FBAnnotationClusteringSwift框架。 这是我添加引脚的方法。

private var arrOfPinsOnMap:[FBAnnotation] = []
private var clusteringManager = FBClusteringManager()

func addMapPoints(){

    self.arrOfPinsOnMap.removeAll()
    self.clusteringManager = FBClusteringManager() //everytime recreate instance otherwise there will be duplicates.

                for i in 0..<sortedObjectsByDistance_ids.count {
                    var id_pobor = String()
                    let pin = FBAnnotation()
                    guard let tempUniqueE21 = get_sortedObjectsByDistance(i) else {
                        continue
                    }

                    let temp = tempUniqueE21
                    pin.coordinate = CLLocationCoordinate2D(latitude: tempUniqueE21.lat, longitude: tempUniqueE21.lng)
                    pin.title = temp.provoz
                    pin.subtitle = temp.ulice

                    self.clusteringManager.addAnnotations([pin])
                    self.arrOfPinsOnMap.append(pin)
            } 
}

当用户使用地图移动时,我正在调用此方法。问题不在于FB框架,而在于存储的Annotation值。

0 个答案:

没有答案