我正在尝试使用以下代码从名为coordarray的2元素CLLocationCoordinate2D
数组和数字2初始化折线:
self.line = MKPolyline.polylineWithCoordinates(coordarray,2)
然而我收到错误说
无法使用类型的参数列表调用'polylineWithCoordinates' ([CLLocationCoordinate2D],智力)
我检查了文档,似乎我已经通过了正确的参数列表,我错过了什么?
答案 0 :(得分:2)
该错误消息非常具有误导性 - 检查MKPolyline的文档实际上并不是Swift的静态方法polylineWithCoordinates
,您可能正在查看Objective-C版本的文件*。也许你打算使用:
convenience init!(coordinates coords: UnsafeMutablePointer<CLLocationCoordinate2D>, count count: Int)
在这种情况下,我相信您的代码必须是:
// Note - coordarray is declared as var
var coordarray = // ...
self.line = MKPolyline(coordinates: &coordarray, count: 2)
这是一个详细说明添加MKPolyline
叠加层的链接:http://mobiletoolworks.com/adding-a-mkpolyline-overlay-using-swift-to-an-ios-mapkit-map/
*要将文档从显示Objective-C更改为Swift,页面右上角有一个控件: