【发布时间】:2015-08-18 11:46:36
【问题描述】:
在 iOS 8 上使用 Swift 1.2 在我的 MkMapView 上可见一些注释。现在,如果用户在地图上滚动,我想删除所有当前不可见的注释。
我该怎么做?
【问题讨论】:
-
你读过我的问题吗?我知道如何删除注释。我想知道如何删除当前不可见的注释..
标签: ios swift annotations mkmapview
在 iOS 8 上使用 Swift 1.2 在我的 MkMapView 上可见一些注释。现在,如果用户在地图上滚动,我想删除所有当前不可见的注释。
我该怎么做?
【问题讨论】:
标签: ios swift annotations mkmapview
首先获取当前可见的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)
}
}
【讨论】: