嘿,我有一些坐标[" 37.7"," -122.4"],我试图用来反转geoCode。所以我可以获得一个简单的UI标签的城市和州。 但是,当我使用CLLocation通过manageMark标准的administrativeArea var /方法获取状态时,它返回nil。
▿一些:1个元素 - 0:旧金山湾,旧金山湾,旧金山,美国@< + 37.80000000,-122.50000000> +/- 100.00m,区域CLCircularRegion(标识符:'< + 37.79999999,-122.50000000>半径141.72',中心:< + 37.79999999,-122.50000000>,半径:141.72m)
这是我从完成处理程序返回的内容。这显然没有任何状态从此返回。为什么会这样,我怎么能得到这个州。
附上控制此acton的代码块,感谢所有帮助。
CLGeocoder().reverseGeocodeLocation(location, completionHandler: { (placeMark, error) in
if error != nil{
print("There was an error")
}else{
if let place = placeMark?[0]{
print(place)
print(place.locality ?? "")
print(place.subAdministrativeArea ?? "")
let myAttribute = [NSAttributedStringKey.font:UIFont(name: "Times New Roman", size: 15.3)!]
let myAttrString = NSAttributedString(string: place.locality ?? "", attributes: myAttribute)
locLabel.attributedText = myAttrString
}
}
})
答案 0 :(得分:0)
您正在与在线数据库进行交互。数据库中的此条目没有状态。这有点可以理解,因为你似乎身处太平洋的一部分水域;它不在一个国家的领土内。但是,无论是原因还是数据库中的怪癖或错误,您无能为力。您已选择使用此数据库,并且必须接受它为您提供的内容。