3 votes

MKReverse Geocoder - Langage de réponse

J'utilise MapKit et MKReverseGeocoder afin de convertir la lat/lon en localisation. J'ai fait quelques tests et je me suis rendu compte que la langue de réponse du géocodage est définie en fonction de la langue sélectionnée sur l'iPhone. Comment puis-je définir explicitement la langue de la réponse ? Je veux que la réponse soit en 'en' quoi qu'il arrive. Mon code est le suivant :

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

3voto

phix23 Points 24407

MKReverseGeocoder (également CLGeocoder dans iOS5) ne vous permet pas de définir la langue.

Cependant, vous pouvez construire votre propre géocodeur inversé en utilisant l'interface suivante API Google Maps . Cela nécessite d'envoyer une requête HTTP et d'analyser les données de la réponse. Vous pouvez définir la langue dans l'URL. Voici une liste des langues prises en charge : https://spreadsheets.google.com/pub?key=p9pdwsai2hDMsLkXsoM05KQ&gid=1

Exemple d'URL :

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

1voto

natas-dk Points 21

Vous pouvez "tromper" l'application pour qu'elle pense qu'il s'agit d'une "langue" spécifique.

voir Comment forcer NSLocalizedString à utiliser une langue spécifique ?

Réponse courte : mettez ceci dans votre main.m. Dans le "autorelease".

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

pour le géocodage anglais

cela peut avoir d'autres effets sur votre application si vous utilisez la localisation.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X