我最近開始學習迅速,現在已經採取下一步製作我自己的地圖。我已經成功地製作了一個mapkit應用程序,現在我正在嘗試使用mapbox的運氣,因爲我喜歡它的設計功能。參數類型'[MGLPointAnnotation]'不符合期望的類型'MGLAnnotation'
我已經建立了一個字典,它包含我的位置數據,然後我做了一個循環,它將數據添加到我的地圖。不過我現在卡住了,我得到了以下錯誤:
「參數類型‘[MGLPointAnnotation]’不符合預期型‘MGLAnnotation’
發生這種情況時,我試圖用我的字典mapView.addAnnotation 。我到目前爲止已經學會了解開字典中的值,但是當我通過編寫mapView.addAnnotation(註釋爲!MGLAnnotation)強制解包時,我的應用崩潰了。在正確的方向嗎?我不是在尋找一個修補程序,但更多的是在找出我錯誤的地方。非常感謝!
下面是代碼:
let locations = [
["name" : "Apple Inc.",
"latitude" : 37.33187,
"longitude" : -122.02951,
"mediaURL" : "http://www.apple.com"],
["name" : "BJ's Restaurant & Brewhouse",
"latitude" : 37.33131,
"longitude" : -122.03175,
"mediaURL" : "http://www.bjsrestaurants.com"]
]
var annotations = [MGLPointAnnotation]()
for dictionary in locations {
let latitude = CLLocationDegrees(dictionary["latitude"] as! Double)
let longitude = CLLocationDegrees(dictionary["longitude"] as! Double)
let coordinate = CLLocationCoordinate2D(latitude: latitude, longitude: longitude)
let name = dictionary["name"] as! String
let discription = dictionary["mediaURL"] as! String
let annotation = MGLPointAnnotation()
annotation.coordinate = coordinate
annotation.title = "\(name)"
annotation.subtitle = "\(discription)"
annotations.append(annotation)
}
mapView.addAnnotation(annotations as! MGLAnnotation)
我仍然遇到此問題。如果有人有解決方案,或只是一個大方向,我可以找到更多的信息,我真的很感激它! – MarkAnon