2015-07-11 3 views
4

Это работало хорошо в Swift 1.2, но теперь дает ошибку:CLGeocoder Swift 2 Версия

«не может ссылаться на 'geocodeAddressString' со списком аргументов типа«(String, completionHandler: ([AnyObject] !, NSError !) -> Пустота)»

geocoder.geocodeAddressString(address, completionHandler: {(placemarks: [AnyObject]!, error: NSError!) -> Void in 
      if let placemark = placemarks?[0] as? CLPlacemark { 
       let annotation = MKPointAnnotation() 

EDIT ОТВЕТ:

geocoder.geocodeAddressString(address, completionHandler: {(placemarks: [CLPlacemark]?, error: NSError?) -> Void in 

ответ

6

переменные в обработчик завершения не настроен правильно, вы не включают в себя заявления так просто -

coder.geocodeAddressString("1 infinite loop, cupertino, ca") { (placemarks, error) -> Void in 

    if let firstPlacemark = placemarks?[0] { 
     print(firstPlacemark) 
    } 
} 

Обратите внимание, что по желанию литые нет необходимости, поскольку умозаключения типа знает, будет CLPlacemark

 Смежные вопросы

  • Нет связанных вопросов^_^