Метка MKPlacemark:вернуть аббревиатуру штата США в административную область

StackOverflow https://stackoverflow.com/questions/1902696

Вопрос

Я использую MKPlacemark класс для заполнения метки сведениями о местоположении.При вызове AdministrativeArea свойство, возвращается полное название штата США (напримерЗападная Вирджиния).Есть ли способ вернуть ТОЛЬКО инициалы (напримерВВ)?

Это было полезно?

Решение

Документы Apple для этого свойства предположите, что нет реального определения того, что он может содержать.Вероятно, вам лучше всего создать функцию для сопоставления полного названия состояния с 2-буквенным кодом и передать результат свойства через нее перед отображением.Я бы использовал исходную строку по умолчанию, если вы не получите совпадения.

-(NSString *)codeFromState:(NSString *)state {
  NSArray *map = [NSArray arrayWithObjects:@"Alabama",@"AL", @"Alaska",@"AK", ... @"Wyoming", @"WY", nil];
  for (int i = 0; i <[map count]; i+=2) {
    if ([state compare:[map objectAtIndex:i]] == NSOrderedSame) {
      return [map objectAtIndex:i+1];
    }
  }
  return state;
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top