【发布时间】:2014-11-28 20:27:38
【问题描述】:
我正在尝试通过获取self.mapView.annotations 来遍历一组注释。
我遇到的问题是我收到一个错误,因为坐标不可用:从 iOS 7 及更早版本开始弃用的 API 对 Swift 不可用。
有什么办法可以解决这个问题吗?我查看了 iOS 开发人员库,但找不到任何获取每个注释坐标的方法。
var zoomRect:MKMapRect = MKMapRectNull;
for (index,annotation) in enumerate(self.mapView.annotations) {
var annotationPoint:MKMapPoint = MKMapPointForCoordinate(annotation.coordinate)
var pointRect:MKMapRect = MKMapRectMake(annotationPoint.x, annotationPoint.y, 0.1, 0.1);
zoomRect = MKMapRectUnion(zoomRect, pointRect);
}
self.mapView.setVisibleMapRect(zoomRect, animated: true)
此代码的主要思想是使地图居中,以便用户能够看到所有注释。我在 Objective C 中得到了这段代码(来自 SO 的另一个问题)并将其转换为 Swift,但仍然没有运气。
【问题讨论】:
标签: swift annotations mapkit mkannotation