マップ ビューで使用するために、タイトル、サブタイトル、および関連付けられた追加情報を持つカスタム MkAnnotation があります。この情報を別の UIViewController に渡しています。ただし、ピンに割り当てた座標に問題があるようです。エラーは、コード「var bridge17pin = MyAnnotation()」の行の下にある pin の設定情報で強調表示されます。
override func viewDidLoad() {
super.viewDidLoad()
//for users location
myLocMgr.desiredAccuracy = kCLLocationAccuracyBest
myLocMgr.requestWhenInUseAuthorization()
myLocMgr.startUpdatingLocation()
myLocMgr.delegate = self
mapView.delegate = self
//coordinate for pin
var bridge17 = CLLocationCoordinate2DMake(53.346061, -6.227379)
//custom MKAnnotation
class MyAnnotation: NSObject, MKAnnotation {
@objc var coordinate: CLLocationCoordinate2D
var EXTRA_INFORMATION: String?
var title: String?
init(coordinate: CLLocationCoordinate2D) {
self.coordinate = coordinate
}
}
//setting information of pin
var bridge17pin = MyAnnotation()
bridge17pin.coordinate = bridge17
bridge17pin.title = "The bridge"
bridge17pin.subtitle = "hello this is the bridge"
bridge17pin.EXTRA_INFORMATION = "this was built in 2010"
mapView.addAnnotation(bridge17pin)
}