在iOS 8上使用Swift 1.2在我的MkMapView上可以看到一些注释。现在,如果用户在地图上滚动,我想删除当前不可见的所有注释。
我该怎么做呢?
答案 0 :(得分:2)
首先获取当前可见的mapRect:
let visRect = mapView.visibleMapRect
现在你可以在那个矩形中获得所有注释:
let inRectAnnotations = mapView.annotationsInMapRect(visRect)
最后一步是迭代所有注释并检查注释是否在这些注释中
for anno : MKAnnotation in mapView.annotations {
if (inRectAnnotations.contains(anno)) {
//do what you want to do with the annotation (hide/remove)
}
}