обратное геокодирование и локализация - PullRequest
3 голосов
/ 25 ноября 2010

Я использую этот код для установки метки со строкой местоположения

locationString = [[NSString alloc] initWithFormat:@"%@%@ - %@ %@%@",
                    thoroughfare,subThoroughfare,postalCode,
                    locality,countryCode];

locationLabel.text = locationString;

, где из метки получены маршрут, суб-магистраль, postalCode, locality, countryCode.

Теперь я хотел бы визуализировать эту строку в соответствии с текущей локалью. Я указал формат строки для каждой локали, которая меня интересует, или есть более простой способ получить это?

Спасибо, Фран

Ответы [ 2 ]

1 голос
/ 26 октября 2012

Вы можете использовать следующую функцию

-(void) setLocation:(NSString *)latitude withLongitude:(NSString *)longitude  {
    CLGeocoder *geocoder = [[CLGeocoder alloc] init];
    CLLocation *location = [[CLLocation alloc] initWithLatitude:[latitude doubleValue] longitude:               
    longitude doubleValue]];
        CLGeocodeCompletionHandler completionHandler = ^ (NSArray *placemarks, NSError *error){
                if (error){
                        NSLog(@"error in fetching location <%@>",error);
                    return ;
                }
                if ( placemarks && placemarks.count >0){
                    CLPlacemark *mark = [placemarks objectAtIndex:0];
                        NSString  *addresstring = [[mark addressDictionary]  objectForKey:@"FormattedAddressLines"] componentsJoinedByString:@","];
             *//fetched addressDictionary for key FormattedAddressLines*

            }
0 голосов
/ 27 ноября 2010

Свойство addressDictionary объекта метки должно частично решить проблему с его массивом FormattedAddressLines.

...