目前正在使用地图视图并向地图添加图钉。我知道如何使用addAnotation()
方法向地图添加单个点。现在,我试图以最简单的方式向MapView添加多个点。我从一个在线XML文件中获取了数据(纬度,经度和名称)并将其存储在一个数组中,现在我想在地图中添加所有这些坐标+名称作为引脚。为此,我已经声明了一组MKPointAnnotation
个像这样的对象:
var pinsArray: [MKPointAnnotation] = []
然后将收集的数据转储到我做了以下内容:
for i in 0...(myFeed.count-1) {
pinsArray[i].title = myFeed.objectAtIndex(i).objectForKey("NOMBRE")!.stringValue
pinsArray[i].coordinate = CLLocationCoordinate2D(latitude: myFeed[i].objectForKey("LATITUD")!.doubleValue, longitude: myFeed[i].objectForKey("LONGITUD")!.doubleValue)
pinsArray[i].subtitle = ""
mapView.addAnnotation(pinsArray[i])
}
但是当我运行应用程序时,我得到一个错误,指出数组索引超出范围(fatal error: Array index out of range
)。我想这是pinsArray
声明的问题,我真的不知道如何解决这个问题。