我尝试在且仅当mapview上没有相同的图钉时才向Mapview添加注释图钉,以避免在同一位置出现多个重复注释。
有人可以帮我吗?
答案 0 :(得分:1)
您可以使用mapView.view(for:)
方法。
例如
if (self.mapView.view(for: annotation) != nil) {
print("pin already on mapview")
}
答案 1 :(得分:0)
@小川晃介建议的方法可行。但是,依靠UI确定应用程序状态不是一个好主意。
例如:您很可能在视图控制器中以某种数据结构存储了批注列表(我猜是一个数组)。这种数据结构应该成为事实的来源。
以您为例,要确定地图上是否已存在Annotation,请检查提供给mapview的Data结构是否包含注释并继续。