错误“在调用中缺少参数'坐标'的参数”

时间:2016-08-03 10:01:10

标签: annotations mapkit mkannotation mkpinannotationview cllocationcoordinate2d

我有一个自定义的MkAnnotation,它有一个标题,副标题和与之相关的额外信息,可以在地图视图中使用。我将此信息传递给另一个UIViewController。但是我的坐标似乎存在一些问题,我为该引脚分配了这个问题。错误在代码行“var bridge17pin = MyAnnotation()”下面的引脚的设置信息中突出显示。

   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)
      }

1 个答案:

答案 0 :(得分:0)

因为您在实例化时必须发送坐标。所以在代码中替换

var bridge17pin = MyAnnotation()

var bridge17pin = MyAnnotation(coordinate: bridge17)

对于那个子标题see this link