当前正在使用地图视图并将地图添加到地图。我知道如何使用addAnotation()
方法将单个点添加到地图。现在,我正在尝试以最简单的方式为MapView添加多个点。我已经从一个在线XML文件中提取数据(纬度,经度和名称)并将其存储在一个数组中,现在我想在地图中添加所有这些坐标+名称作为引脚。这样做的我已经声明MKPointAnnotation
对象,像这样的数组:创建一个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
的声明的问题,我真的不知道如何解决这个问题。
在这行你得到这个例外? – gagarwal
for循环中的第一个 – jdmg718
我猜你的“pinsArray”是空的。 – gagarwal