xcode – geocoder.geocodeAddressString今天不再适用于swift更
发布时间:2020-12-14 18:59:22 所属栏目:百科 来源:网络整理
导读:https://developer.apple.com/library/prerelease/mac/releasenotes/General/APIDiffsMacOSX10_11/Swift/CoreLocation.html 表明有一些变化 func geocodeAddressString(_ addressString: String!,completionHandler completionHandler: CLGeocodeCompletionH
https://developer.apple.com/library/prerelease/mac/releasenotes/General/APIDiffsMacOSX10_11/Swift/CoreLocation.html
表明有一些变化 func geocodeAddressString(_ addressString: String!,completionHandler completionHandler: CLGeocodeCompletionHandler!) 至: func geocodeAddressString(_ addressString: String,completionHandler completionHandler: CLGeocodeCompletionHandler) 我的代码是: var geocoder = CLGeocoder() geocoder.geocodeAddressString("(event!.street),(event!.city),(event!.country)",completionHandler: {(placemarks: [AnyObject]!,error: NSError!) -> Void in if let placemark = placemarks?[0] as? CLPlacemark { self.event!.lat = placemark.location!.coordinate.latitude self.event!.long = placemark.location!.coordinate.longitude self.event!.getMiles(self.currentLocation!.location!.coordinate.latitude,clong: self.currentLocation!.location!.coordinate.longitude) var mile = self.event!.miles != nil ? NSString(format: "%.1f miles",self.event!.miles!) : "Location services off" self.milesButton.setTitle(mile as String,forState: .Normal) } }) 尝试: var geocoder = CLGeocoder() let address = "(event!.street),(event!.country)" geocoder.geocodeAddressString(address,completionHandler: {(placemarks: [CLPlacemark]) in let placemark = placemarks[0] self.event!.lat = placemark.location!.coordinate.latitude self.event!.long = placemark.location!.coordinate.longitude self.event!.getMiles(self.currentLocation!.location!.coordinate.latitude,clong: self.currentLocation!.location!.coordinate.longitude) var mile = self.event!.miles != nil ? NSString(format: "%.1f miles",self.event!.miles!) : "Location services off" self.milesButton.setTitle(mile as String,forState: .Normal) }) 它只是说它不被允许.尝试了几种不同的组合.这是对xcode / swift的最新更新 提前致谢 解决方法
以这种方式使用geocodeAddressString:
geocoder.geocodeAddressString(address,completionHandler: {(placemarks: [CLPlacemark]?,error: NSError?) -> Void in }) 它会工作正常. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |