2011-09-11 1 views
3

위도/경도를 위치로 변환하기 위해 MapKit 및 MKReverseGeocoder를 사용하고 있습니다. 몇 가지 테스트를 수행하고 지오 코딩 응답 언어가 iPhone의 선택한 언어에 따라 설정되었음을 알고 있습니다. 응답 언어를 명시 적으로 설정하려면 어떻게합니까? 무엇이든 상관없이 'en'에 응답을 원합니다. 내 코드는 다음과 같습니다MKReverse 지오 코더 - 응답 언어

MKReverseGeocoder *geocoder = [[MKReverseGeocoder alloc] initWithCoordinate:center]; 
[geocoder setDelegate:self]; 
[geocoder start]; 

답변

3

MKReverseGeocoder (iOS5를에서도 CLGeocoder)는 언어를 설정하는 것을 허용하지 않습니다.

그러나 Google Maps API을 사용하여 사용자 고유의 역 지오 코더를 빌드 할 수 있습니다. HTTP 요청을 보내고 응답 데이터를 구문 분석해야합니다. URL에 설정된 언어를 설정할 수 있습니다. https://spreadsheets.google.com/pub?key=p9pdwsai2hDMsLkXsoM05KQ&gid=1

예 URL :

http://maps.google.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=true&language=en 
+0

정말 멋지다. 코드 내부에 분기를 정의하는 경우 추가 할 필요가 없다. 감사합니다. @ phix23 그것은 많은 도움이되었습니다. – fyasar

1

당신이 "트릭은"응용 프로그램이 특정 "언어"

How to force NSLocalizedString to use a specific language

짧은 대답을 볼 생각 할 수 있습니다 여기에 지원되는 언어의 목록입니다 이걸 네 주전에 넣어 라. "autorelease"에서. 영어 지오 코딩

당신은 현지화를 사용하는 경우 앱에 다른 효과가있을 수 있습니다에 대한

[[NSUserDefaults standardUserDefaults]  
setObject:[NSArray arrayWithObject:@"en"]  
forKey:@"AppleLanguages"]; 

.

+0

왜 -1일까요 ?? 그것은 작동 솔루션입니다 .. –

+0

아니, 작동하지 않아요. – Rusik