私は最近、迅速な学習を始め、今すぐ自分のマップを作成する次のステップを踏み出しました。私はすでにマップキットを使ってアプリを作ってきましたが、私はデザイン機能が好きなので、マップボックスで私の運を試しています。引数タイプ '[MGLPointAnnotation]'が予想されるタイプ 'MGLAnnotation'に適合しません
私は自分の位置情報を保持する辞書を作成した後、ループを作成しています。このループは地図にデータを追加します。しかし、私は、私は次のエラーを取得するよう、今こだわっています:
「引数の型は 『[MGLPointAnnotation]』期待タイプに準拠していない 『MGLAnnotation』
私は私の辞書にmapView.addAnnotationしようとすると、この問題が発生しました私はこれまでに辞書の値をアンラップすることと関係があることを知っていますが、mapView.addAnnotation(!MGLAnnotationというアノテーション)を書いてアンラップを強制すると、アプリがクラッシュします。
誰かが私を見せてくれますか?正しい方向に?私は修正プログラムを探しているわけではありませんが、私は物事が間違っている場所を見つけることに多くの。ありがとうたくさん!ありがとうたくさん!ありがとうたくさん!ありがとう!
はここのコードです: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