【发布时间】:2020-05-12 12:21:55
【问题描述】:
我将创建返回地址字符串的函数。 但下面的函数返回“”的空字符串。
如何制作返回地址函数?
let defaultLocation = CLLocation(latitude: 35.17944, longitude: 129.07556)
func convertToPlaceMark(_ location: CLLocation, data: Any?) -> String {
var str: String? = ""
CLGeocoder().reverseGeocodeLocation(location) {
places,err in
if err != nil {
print("geocoder error")
return
}
let placeMark1: CLPlacemark? = places!.last
if placeMark1 != nil {
str = placeMark1?.name // "1001 Jungang-daero\n" <--- I need function that return this value
print(str!)
}
}
return str!
}
print(convertToPlaceMark(defaultLocation, data: nil)) // "\n"
【问题讨论】:
-
闭包内的
print(str!)是否打印任何内容? -
这能回答你的问题吗? Reverse geocoding in Swift 4
标签: swift mapkit clgeocoder