4
CLGeocoder reverseGeocodeLocation이 주소를 조회 할 때 다른 위도/경도로 장소 표시를 반환하는 이유는 무엇입니까?CLGeocoder reverseGeocodeLocation에서 위도/경도가 다른 장소 표시를 반환하고 있습니까? (놀이터 예제 첨부)
배경 :지도를 길게 누르면 핀을 놓을 수 있지만 코드를 역 지오 코딩하면 핀에 영역 이름을 넣을 수 있지만 핀을 놓으면 다른 위치에 놓이게됩니다. 위치 (즉, 좋은 사용자 경험). 그래서 사용자가 실제로 선택한 위도/경도를 활용하는 방법을 찾고 있지만 위치 이름을 찾으십시오.
예 : 코드 나는 아래 참조 :
이- 입력 : -28.7780218895614, 152.978574011267
- 가 출력 : -28.864405, 153.0001191는
코드 :
import UIKit
import CoreLocation
import PlaygroundSupport
// Initial Test Co-ordinate
let locInput = CLLocation(latitude: -28.778021889561444, longitude: 152.97857401126666)
print("Input: \(locInput.coordinate.latitude), \(locInput.coordinate.longitude)")
// Initiate Reverse Geocoding
let geocoder: CLGeocoder = CLGeocoder()
print("About to call reverse geocoding function")
geocoder.reverseGeocodeLocation(locInput) { placemarks, error in
guard let placemarks = placemarks else {fatalError("No Placemarks Provided \(error?.localizedDescription)")}
for p in placemarks {
print("OUTPUT: \(p.location!.coordinate.latitude), \(p.location!.coordinate.longitude)")
}
}
// Enable Asynch
PlaygroundPage.current.needsIndefiniteExecution = true
추 신 : 또는이 경우 reverseGeocodeLocation에서 반환 한 장소 표시를 사용하고 지역, 하위 지역, 국가 문자열을 사용하지만 위치/좌표는 아니지만 "긴 보도 자료"의 좌표를 사용하는 방식입니다. – Greg