Swift获取地图中显示的可见注释/集群

时间:2018-07-02 22:45:53

标签: swift mapkit mkannotation

我目前正在开发一个应用程序,该应用程序将用户图像作为注释加载到地图上。目前,我使用API​​为每个图像批注在viewForAnnotation中加载图像,如果用户拥有几千张照片,则每次都会调用此图像加载功能,从而显着降低性能。

无论如何,我是否只能获取当前在地图上显示的注释,即仅对用户可见的注释和注释簇? Apple的使用visibleMapRect的注释API(in :)基本上返回每个注释,而我只需要高级注释或当前显示的注释。例如,在下面的链接图像中,出现了2个注释,但是这2个注释是数百个注释的集合。有什么方法可以只为这两个图像而不是每个注解加载图像吗?

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以这样检查吗:

func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? {
    if annotation is MKClusterAnnotation {
        // Need to load images
    }
    ...
}