polylineWithCoordinates

时间:2015-05-17 20:25:52

标签: ios swift mkpolyline

我正在尝试使用以下代码从名为coordarray的2元素CLLocationCoordinate2D数组和数字2初始化折线:

self.line = MKPolyline.polylineWithCoordinates(coordarray,2)

然而我收到错误说

  

无法使用类型的参数列表调用'polylineWithCoordinates'   ([CLLocationCoordinate2D],智力)

我检查了文档,似乎我已经通过了正确的参数列表,我错过了什么?

1 个答案:

答案 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,页面右上角有一个控件:

enter image description here